CUDA的挑戰者
ROCm最初是為NVIDIA的GPU而開發的,然而,AMD後來將重心轉向了自己的GPU。
NVIDIA的知名度主要來自其GPU,但其真正的魔力來自於CUDA,這是其無法缺少的軟件。在最近的一次專訪中,NVIDIA的首席執行官黃仁勳表示,他們的目標是讓AI工程師能夠“一次構建,到處運行”。
黃仁勳提到,“在軟件上的投資是最昂貴的”,並強調CUDA在支持和最大化硬件潛力方面的重要性。他進一步表示,NVIDIA堅持無限期支持其軟件,舉了C語言作為這種方法的例子。他說:“我們從未放棄過一個軟件”,並補充說NVIDIA將繼續維護其開發的軟件,“只要我們還在”。
在另一個訪談中,他透露,保護軟件的心理始於1993年(NVIDIA成立的那一年),並自那時以來一直是公司的首要任務。他說:“NVIDIA的CUDA擁有如此龐大的安裝基礎,原因在於我們一直在保護它。”
如今,大約有五百萬名開發者來自四萬家公司使用CUDA。它提供了一個穩健的環境,擁有超過300個代碼庫、600個AI模型,並支持3700個GPU加速的應用程序,滿足多樣的計算需求。
CUDA主要支持C、C++和Fortran,並包括一個成熟的API,擁有廣泛的並行處理庫,如線性代數的cuBLAS、深度學習的cuDNN以及並行算法的Thrust。開發者還可以使用內建CUDA支持的框架,如PyTorch和TensorFlow。
AMD的ROCm發展
為了挑戰NVIDIA的CUDA,AMD推出了ROCm 6.2,該版本引入了FP8數據類型、Flash Attention 3、Kernel Fusion等重要的AI特性。這些更新使ROCm 6.2在推理方面提供了高達2.4倍的性能提升,在訓練方面則提高了1.8倍,相較於ROCm 6.0。
在一次專訪中,Johnaic的創始人Sasank Chilamkurthy表示,ROCm對CUDA有優勢,因為它對PyTorch的強大支持。他補充說,喜歡擁有自己代碼的公司可能會受益於使用ROCm。Chilamkurthy還分享了一個有趣的事實:ROCm最初是為NVIDIA的GPU而開發的,但AMD後來將重心轉向了自己的GPU。
值得注意的是,該公司最近推出了新的MI325X加速器,用於訓練和推理大型語言模型(LLMs)。
在2024年的推進AI峰會上,AMD的AI高級副總裁Vamsi Bopanna分享了有關ROCm的更多細節。他表示:“ROCm是一整套開發和部署AI工作負載所需的庫、運行時編譯器和工具。我們設計ROCm時考慮到了模塊化和開源,允許AI社區快速貢獻。”Bopanna還補充說,它也旨在與生態系統組件和框架(如PyTorch及模型庫如Hugging Face)輕鬆連接。
他解釋說,他們擴大了對新框架(如JAX)的支持,並實現了強大的新特性、算法和優化,以提供最佳的生成AI工作負載性能。
AMD還支持各種開源框架,包括vLLM、Triton、SGlang、ONNX Runtime等。Bopanna透露,如今,有超過100萬個Hugging Face模型在AMD上運行。
“我們與PyTorch有著非常深入的合作。我們在其內部完全上游,並且每晚運行超過200,000次測試,是PyTorch社區中的一級公民。”AMD的企業副總裁Bradley McCredie表示,只有兩個計算平台在PyTorch中完全上游,而AMD就是其中之一。
AMD還與Triton密切合作,這是一種由OpenAI開發的開源編程語言和編譯器,旨在進行GPU編程。雖然Triton最初是為NVIDIA的GPU設計的,但最近的發展使其能夠通過ROCm平台與AMD的GPU兼容。
McCredie表示:“Triton對我們的行業來說是一個極具戰略意義的平台,因為它為編程人員提供了一個高生產力的環境,並且具有高層次的抽象,使性能出色。”他補充說,這消除了對CUDA等硬件特定語言的依賴,使程序員能夠直接在這一層面編碼,並直接編譯到AMD平台。
此外,與NVIDIA的CUDA相比,搭載ROCm的AMD GPU提供了更具成本效益的選擇。儘管其頂級GPU的原始性能可能落後10-30%,但價格差異卻可以相當可觀。
在2024年推進AI峰會上,AMD邀請了初創企業的領導者,如Luma AI的首席執行官Amit Jain、Essential AI的首席執行官Ashish Vashwani、Reka AI的首席執行官Dani Yogatama,以及Fireworks AI的首席技術官Dmytro Dzhulgakov,分享對ROCm的見證。
Luma AI最近推出了一個名為Dream Machine的視頻生成模型。Jain表示:“我們正在訓練的模型非常具有挑戰性,與大型語言模型(LLMs)完全不同。然而,我們對能夠在ROCm和MI300X GPU上快速啟動模型感到印象深刻。我們只用了幾天就建立了端到端的管道,這實在是太棒了。”
CUDA的優勢?
AMD的ROCm尚未達到CUDA的成熟程度。NVIDIA圍繞CUDA的生態系統十分廣泛,擁有龐大的開發者社區、豐富的文檔和一系列用於調試和分析的工具。
大多數深度學習框架、高性能計算(HPC)應用程序和庫都是以CUDA為考量進行開發的,這使得CUDA成為許多開發者的首選。
NVIDIA於2006年推出了CUDA,作為一個專有的並行計算平台和應用程序編程接口(API)模型,而ROCm則是在2014年首次推出。
AMD仍在發展ROCm以趕上CUDA。一位Hacker News的用戶建議,為了讓ROCm有機會與CUDA抗衡,AMD需要投入數十億美元來建立生態系統,包括支持開發者、創建資源以及培養一個可以與CUDA的受歡迎程度相匹敵的長期平台。
這位用戶解釋說,歷史上,像Intel和AMD這樣的硬件公司在建立和維護強大的軟件生態系統方面一直面臨挑戰。以OpenCL為例,儘管得到了硬件公司的支持,但由於支持不一致和缺乏生態系統投資,它未能發展成為強有力的競爭者。
CUDA唯一的問題是它是封閉源代碼,只能用於NVIDIA GPU的工作負載。儘管人們一直在尋找幾種解決方案來繞過這一限制,但CUDA仍然是NVIDIA GPU上的最佳選擇,隨著大家都在使用NVIDIA的GPU,這種壁壘變得更加明顯。
目前,NVIDIA控制著95%的AI芯片市場。一位用戶在Reddit上發帖表示:“CUDA在GPU編程中佔據主導地位,因為NVIDIA在AI、機器學習和其他GPU編程應用中主導了GPU市場。CUDA是專屬於NVIDIA的。”
在印度,像Unscript和Sarvam AI這樣的初創企業向AIM透露,他們使用NVIDIA的GPU和CUDA,尚未採用ROCm。
去年,AMD收購了Nod.ai,以為AI客戶提供開源軟件,方便在AMD硬件上輕鬆部署高性能的AI模型。該公司最近還收購了歐洲的私立AI實驗室Silo AI。AMD的首席執行官Lisa Su表示:“我們最近完成了對Silo AI的收購,這增強了一支在訓練和優化LLMs方面擁有豐富經驗的世界級團隊,並提供客戶特定的AI解決方案。”
總的來說,雖然ROCm提供了一個引人注目的替代方案,但CUDA的成熟度和廣泛使用使其難以超越。
這篇文章不僅揭示了NVIDIA和AMD之間的競爭,還反映了AI技術發展中的生態系統重要性。隨著市場的快速變化,開發者和企業必須在選擇技術平台時考慮未來的可持續性和支持,這對於推動創新和保持競爭力至關重要。
以上文章由特價GPT API KEY所翻譯及撰寫。而圖片則由FLUX根據內容自動生成。