初創(chuàng)公司硬剛英偉達(dá):在AMD卡上模擬CUDA,原版程序直接編譯運(yùn)行
登頂HackerNews熱榜
克雷西 發(fā)自 凹非寺
量子位 | 公眾號(hào) QbitAI
無(wú)需任何修改轉(zhuǎn)換,AMD顯卡也跑起原版CUDA程序了!
英國(guó)一家初創(chuàng)公司,推出了針對(duì)AMD的CUDA程序編譯工具,而且免費(fèi)商用。
工具一經(jīng)發(fā)布就引發(fā)了網(wǎng)友們的廣泛熱議,并登頂了HackerNews熱榜。

該工具名為SCALE,開(kāi)發(fā)者給它的定位是一個(gè)GPGPU(通用GPU)編程工具包。

目前已有大模型框架llama-cpp等9個(gè)程序通過(guò)測(cè)試,實(shí)現(xiàn)了正常運(yùn)行。
與其他實(shí)現(xiàn)方式不同,SCALE直接模擬CUDA工具包的安裝,不需要轉(zhuǎn)換成其他語(yǔ)言就能源到源地完成編譯。
因此,像內(nèi)聯(lián)PTX這種英偉達(dá)專用的中間語(yǔ)言,SCALE同樣能夠提供支持。
無(wú)需轉(zhuǎn)換,讓AMD跑起CUDA
官網(wǎng)介紹顯示,SCALE主要有三個(gè)組成部分——兼容的nvcc編譯器、CUDA運(yùn)行時(shí)和驅(qū)動(dòng)API的AMD實(shí)現(xiàn),以及ROCm庫(kù)。
其中編譯器可以把用包括nvcc、內(nèi)聯(lián)PTX等在內(nèi)的CUDA專屬語(yǔ)言編寫(xiě)的程序,直接編譯成可在AMD GPU上運(yùn)行的二進(jìn)制代碼。
ROCm庫(kù)則用來(lái)提供“CUDA-X”API,SCALE在處理cuBLAS和cuSOLVER等庫(kù)時(shí)均采用這種方式。

SCALE的關(guān)鍵創(chuàng)新點(diǎn)在于按原樣接受CUDA程序,而不必將它們移植到另一種語(yǔ)言,兼容nvcc和clang等多種編譯方式,同時(shí)現(xiàn)有的構(gòu)建工具和腳本(如cmake)可以正常工作。
按照官方的說(shuō)法,SCALE實(shí)現(xiàn)了對(duì)CUDA的完全兼容,讓開(kāi)發(fā)者無(wú)需針對(duì)不同GPU平臺(tái)分別編寫(xiě)代碼。
這一點(diǎn)與AMD推出的HIP存在很大不同,因?yàn)镠IP是通過(guò)一定方式對(duì)CUDA代碼進(jìn)行重寫(xiě),遇到復(fù)雜的宏可能無(wú)法正確理解,也不支持內(nèi)聯(lián)PTX等專屬語(yǔ)言。
甚至SCALE作者認(rèn)為,HIP并不能解決CUDA兼容性問(wèn)題。
另外,SCALE的語(yǔ)言是CUDA的超集,提供一些可選的語(yǔ)言擴(kuò)展,可以使希望擺脫nvcc的開(kāi)發(fā)者更輕松、更高效地編寫(xiě)GPU代碼。
作者表示,希望未來(lái)開(kāi)發(fā)者可以只編寫(xiě)一次代碼,就能不同硬件平臺(tái)上運(yùn)行,并正在著手通過(guò)彌合流行的CUDA編程語(yǔ)言和其他硬件供應(yīng)商之間的兼容性差距。
目前,SCALE對(duì)AMD各系列GPU的支持情況如下:
- 已支持:gfx1030(RX6000系列)和gfx1100(RX7000系列)
- “似乎有效”(seem to work):gfx1010(RX5000系列)和gfx1101
- 正在適配:gfx900(RX Vega系列)
另外,作者測(cè)試了一些CUDA開(kāi)源項(xiàng)目,并利用SCALE成功運(yùn)行了9款CUDA應(yīng)用。

不過(guò),SCALE畢竟是個(gè)全新的項(xiàng)目,所以作者也準(zhǔn)備了從安裝到編譯的一系列教程,給出了不同類型的示例程序。
教程關(guān)鍵步驟都附有相關(guān)代碼,甚至包括了如何判斷自己GPU的型號(hào),可以說(shuō)是非常細(xì)致了。

如果使用過(guò)程中遇到問(wèn)題,作者也介紹了常見(jiàn)故障的排除方式,同時(shí)還開(kāi)通了Discord論壇,可與開(kāi)發(fā)團(tuán)隊(duì)直接溝通交流。

打造出SCALE的這家初創(chuàng)公司名為Spectral Compute,2018年成立于英國(guó),自稱對(duì)CPU和GPU的架構(gòu)有深入的了解,目標(biāo)是幫助開(kāi)發(fā)者高效利用算力資源。

網(wǎng)友:挑戰(zhàn)英偉達(dá)護(hù)城河?
有網(wǎng)友認(rèn)為,如果SCALE真能有(宣傳中的)效果,那么將對(duì)英偉達(dá)護(hù)城河發(fā)起挑戰(zhàn),讓AMD與之展開(kāi)直接競(jìng)爭(zhēng)。

不過(guò),現(xiàn)在下定論未免為時(shí)過(guò)早,畢竟SCALE官方也承認(rèn)目前和原版CUDA相比還存在一些缺陷。
而且開(kāi)發(fā)者也明確表示有一些CUDA API和功能并不被支持,但也沒(méi)有給出具體的列表。

關(guān)于“AMD方案”的更多不足,一名自稱和SCALE團(tuán)隊(duì)交流過(guò)的網(wǎng)友表示,目前的SCALE還無(wú)法操作TensorCore,也就意味著AMD上跑不了FlashAttention加速框架。
另外由于N卡上有強(qiáng)大的矩陣乘法單元,所以即使能編譯運(yùn)行,AMD卡上的性能可能也不及N卡。

更有網(wǎng)友認(rèn)為,英偉達(dá)一家獨(dú)大的原因是AMD不愿意投資讓其GPU擁有更高的機(jī)器學(xué)習(xí)性能(而不只是擁有CUDA這一個(gè)優(yōu)勢(shì))。

即便能夠高效運(yùn)行,AMD卡是否真的經(jīng)濟(jì)實(shí)惠且容易獲得,同樣是一個(gè)問(wèn)題。

還有一波網(wǎng)友的觀點(diǎn)是,最大的問(wèn)題不是技術(shù)上能不能運(yùn)行,而是背后的法律問(wèn)題。
這個(gè)問(wèn)題同樣引發(fā)了廣泛的討論,不過(guò)目前也暫未有定論。
有人認(rèn)為SCALE像ZLUDA(另一種在AMD上運(yùn)行CUDA程序的方式)一樣存在法律疑點(diǎn),有可能招致英偉達(dá)的訴訟。

具體來(lái)說(shuō),根據(jù)英偉達(dá)的EULA條款,CUDA SDK只允許開(kāi)發(fā)在N卡上運(yùn)行的應(yīng)用程序,這可能禁止了類似SCALE這樣的兼容實(shí)現(xiàn)。

但立馬就又有網(wǎng)友說(shuō),SCALE并沒(méi)有用到英偉達(dá)的“SDK”,何談SDK使用協(xié)議呢?

總之,無(wú)論是技術(shù)不足還是法律問(wèn)題,對(duì)于這個(gè)新工具的討論都還在持續(xù)進(jìn)行。
至于到底好不好用,這就要由開(kāi)發(fā)者用腳投票了。
參考鏈接:
[1]https://docs.scale-lang.com/
[2]https://news.ycombinator.com/item?id=40970560
- 論文自動(dòng)變漫畫(huà)PPT!Nano Banana同款用秘塔免費(fèi)生成,還有一對(duì)一語(yǔ)音講解2025-12-09
- 智能體A2A落地華為新旗艦,鴻蒙開(kāi)發(fā)者新機(jī)遇來(lái)了2025-12-06
- 14歲華人小孩,折個(gè)紙成美國(guó)天才少年2025-12-06
- 《三體》“宇宙閃爍”成真!免佩戴裸眼3D屏登Nature2025-12-06



