對於 x86、Arm、MISC和RISC-V等處理器架構都有深入研究的傳奇處理器架構師JimKeller批評被外界認為是英偉達(NVIDIA)“護城河”的CUDA架構和軟件堆棧,並將其比作x86,稱之為“沼澤”。他指出,就連英偉達本身也有多個專用軟件包,出於性能原因,這些軟件包依賴於開源框架。
“CUDA 是沼澤,而不是護城河,”凱勒在 X 帖子中寫道。“x86 也是一片沼澤。[…] CUDA 並不漂亮。它是通過一次堆積一件東西來構建的。”
確實,就像x86一樣,CUDA在保持軟件和硬件向後兼容性的同時逐漸增加功能。
這使得英偉達的平臺完整且向後兼容,但它影響性能並使程序開發變得更加困難。
同時,很多開源軟件開發框架可以比CUDA更高效地使用。
“基本上沒有人編寫 CUDA,”Jim Keller在後續帖子中寫道。“如果你確實編寫 CUDA,它可能不會很快。[...] Triton、Tensor RT、Neon 和 Mojo 的存在是有充分理由的。”
甚至NVIDIA本身也有不完全依賴 CUDA 的工具。
例如,Triton Inference Server 是 NVIDIA 的一款開源工具,可簡化 AI 模型的大規模部署,支持 TensorFlow、PyTorch 和 ONNX 等框架。
Triton 還提供模型版本控制、多模型服務和並發模型執行等功能,以優化 GPU 和 CPU 資源的利用率。
NVIDIA的TensorRT是一種高性能深度學習推理優化器和運行時庫,可加速NVIDIA GPU上的深度學習推理。
TensorRT 從各種框架(例如 TensorFlow 和 PyTorch)中獲取經過訓練的模型,並對其進行優化以進行部署,從而減少延遲並提高圖像分類、對象檢測和自然語言處理等實時應用程序的吞吐量。
但是,盡管像Arm、CUDA 和x86這樣的架構可能會被認為是“沼澤”,因為它們的演進速度相對較慢、必須向後兼容並且體積龐大,但這些平臺也不像GPGPU這樣分散,這可能根本不是一件壞事。
目前尚不清楚 Jim Keller 對 AMD 的ROCm和英特爾的OneAPI有何看法,但很明顯,盡管他花很多年時間設計 x86 架構,但他並不迷戀其未來前景。
他的言論還暗示,盡管他曾在世界上一些最大的芯片制造商工作過一段時間,包括蘋果、英特爾、AMD、博通(現在是Tenstorrent)等公司,但我們可能不會在NVIDIA的名單上看到他的名字。