CUDA-英偉達(dá)構(gòu)筑的馬奇諾防線(xiàn),國(guó)內(nèi)GPU初創(chuàng)企業(yè)如何破防-(英偉達(dá)mariko)
CUDA 是 NVIDIA 發(fā)明的一種并行計(jì)算平臺(tái)。它通過(guò)利用圖形處理器 (GPU) 的處理能力,可大幅提升計(jì)算性能,通過(guò)這個(gè)技術(shù),用戶(hù)可利用NVIDIA的GPU進(jìn)行圖像處理之外的運(yùn)算。簡(jiǎn)單來(lái)說(shuō),程序員平時(shí)如果不使用特定框架都是針對(duì)CPU進(jìn)行編程的。2006年,英偉達(dá)發(fā)布了CUDA,它提供了GPU編程的簡(jiǎn)易接口,程序員可以基于CUDA編譯基于GPU的應(yīng)用程序,利用GPU的并行計(jì)算能力更高效的解決復(fù)雜計(jì)算難題,其在GPU編程領(lǐng)域的革命性不亞于C、Python、PHP等高等編程語(yǔ)言的發(fā)明?,F(xiàn)在主流的深度學(xué)習(xí)框架大多都基于CUDA進(jìn)行GPU加速運(yùn)算。從硬件角度看,英偉達(dá)會(huì)經(jīng)常宣傳自家顯卡擁有的CUDA Core數(shù)量。CUDA Core其實(shí)就是英偉達(dá)的流處理器,從字面上就能看出該核心主要針對(duì)深度學(xué)習(xí)中的Tensor計(jì)算設(shè)計(jì).
隨著人工智能產(chǎn)業(yè)爆炸式增長(zhǎng),導(dǎo)致計(jì)算復(fù)雜化和算力不足,CPU并行計(jì)算能力遠(yuǎn)不如GPU,使得GPU在通用計(jì)算領(lǐng)域逐漸領(lǐng)先,為了進(jìn)一步專(zhuān)注通用計(jì)算,GPGPU便應(yīng)運(yùn)而生。GPGPU與CUDA之間關(guān)系十分密切。GPGPU其實(shí)是去掉了圖形顯示功能的GPU,它將全部能力都投入到通用計(jì)算上,CUDA的出現(xiàn)讓GPU真正實(shí)現(xiàn)更廣泛的通用計(jì)算。CUDA與GPGPU也直接推動(dòng)了AI與深度學(xué)習(xí)的發(fā)展與產(chǎn)業(yè)革命。
譬如筆者的這款英偉達(dá)2019年發(fā)布的GTX1660(已經(jīng)是爛大街的產(chǎn)品了),內(nèi)置CUDA核心1408,足以應(yīng)付小型的參數(shù)量在千萬(wàn)級(jí)別的語(yǔ)音/圖像等領(lǐng)域的深度學(xué)習(xí)訓(xùn)練任務(wù).在同等規(guī)模模型訓(xùn)練場(chǎng)景下,比目前最先進(jìn)的CPU要快上至少5倍以上.
根據(jù)目前筆者了解的情況,2023年英偉達(dá)發(fā)布的40系列GPU,CUDA核心已經(jīng)接近一萬(wàn).
當(dāng)我們了解了CUDA是怎么回事,也就方便解釋為什么國(guó)產(chǎn)GPU需要兼容CUDA。
國(guó)產(chǎn)GPU兼容CUDA可以同時(shí)繼承英偉達(dá)打造好的軟件生態(tài)以適配主流深度學(xué)習(xí)框架,也有更多資料可供學(xué)習(xí),這對(duì)于蹣跚起步的國(guó)產(chǎn)GPU行業(yè)來(lái)說(shuō),減輕了不少開(kāi)發(fā)難度,也降低了推廣壓力,可這實(shí)現(xiàn)起來(lái)絕非易事.
原因如下:
從開(kāi)發(fā)角度分析,業(yè)內(nèi)GPU工程師稱(chēng)目前GPU市場(chǎng)可以籠統(tǒng)的分成兩大塊,分別是計(jì)算和渲染。目前國(guó)內(nèi)GPU廠(chǎng)商通常專(zhuān)注于計(jì)算方面即GPGPU的研發(fā)。
國(guó)內(nèi)GPU廠(chǎng)商若無(wú)法做到與英偉達(dá)的架構(gòu)、封裝技術(shù)、驅(qū)動(dòng)優(yōu)化等都保持完全一致,CUDA生態(tài)就一定不會(huì)完美適配其GPU。
CUDA本身涵蓋了多個(gè)技術(shù)領(lǐng)域,其后續(xù)更新都與英偉達(dá)自家GPU高度綁定,即使全部開(kāi)源,第三方廠(chǎng)家也難以完美移植到自家GPU上。
此外,CUDA也并不是一成不變的。每進(jìn)行一次GPU的迭代,CUDA架構(gòu)就會(huì)發(fā)生很大變化。國(guó)產(chǎn)GPU如果完全基于CUDA生態(tài)進(jìn)行開(kāi)發(fā),那它的硬件更新將完全綁定英偉達(dá)的開(kāi)發(fā)進(jìn)程,這樣就會(huì)永遠(yuǎn)慢人一步.
不過(guò)業(yè)內(nèi)開(kāi)發(fā)者也不用悲觀(guān)。因?yàn)镃UDA本質(zhì)是一個(gè)計(jì)算架構(gòu),它并不需要英偉達(dá)的完全授權(quán)。我們可以參考英偉達(dá)的有力競(jìng)爭(zhēng)者AMD。AMD基于開(kāi)源生態(tài)OpenCL開(kāi)發(fā),與CUDA相比,其開(kāi)發(fā)函數(shù)甚至可以進(jìn)行直接替換。國(guó)內(nèi)GPU廠(chǎng)家或許可以參考AMD發(fā)展模式,前期借鑒可以是后期創(chuàng)新的基礎(chǔ)。
寫(xiě)在最后
CUDA作為英偉達(dá)壟斷GPU領(lǐng)域的關(guān)鍵力量,是國(guó)產(chǎn)廠(chǎng)商繞不過(guò)去的一道坎。CUDA在誕生之初,為人們?cè)谏疃葘W(xué)習(xí)與AI領(lǐng)域立下汗馬功勞,但如果它被用來(lái)鉗制新力量的發(fā)展,CUDA也將成為英偉達(dá)的馬奇諾防線(xiàn)。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn),該文觀(guān)點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。