RISC-V的影響力越來越大
業(yè)界越來越多地談?wù)?RISC-V 架構(gòu)帶來的好處,但它甚至是正確的起點(diǎn)嗎?雖然它可能并不完美,但它可能會(huì)提供逐步前進(jìn)所需的靈活性。
計(jì)算機(jī)架構(gòu)和軟件追隨了 80 年前開發(fā)的處理器的腳步。他們的目標(biāo)是使用一種基礎(chǔ)技術(shù)來解決順序標(biāo)量算術(shù)問題,只要它有足夠的內(nèi)存,就可以解決任何有限問題。
芯片行業(yè)已經(jīng)表明不愿意放棄這種方法,尤其是在仍在運(yùn)行 50 年前開發(fā)的軟件的行業(yè)。軟件范式和向后兼容性具有巨大的影響。編程以任何有意義的方式從單處理器遷移到多處理器架構(gòu)花了幾十年的時(shí)間,直到 NVIDIA 開發(fā)了 CUDA,針對大規(guī)模并行處理器的應(yīng)用程序才開始在高度專業(yè)化的應(yīng)用程序之外開發(fā)。
那么,當(dāng)許多應(yīng)用程序的典型工作負(fù)載是數(shù)據(jù)流問題且控制量很小時(shí),為什么該行業(yè)需要另一種 CPU 架構(gòu)呢?答案在于 RISC-V 架構(gòu)可以以多種方式發(fā)展,其中一些方式可能會(huì)實(shí)現(xiàn)緩慢遷移,而不是試圖跨越巨大的鴻溝。
幾周前,RISC-V 社區(qū)在歐洲舉行了年度峰會(huì),展示了 RISC-V 的使用方式越來越多,以及其影響如何越來越大,尤其是在沒有很多遺留軟件阻礙它的應(yīng)用領(lǐng)域?!癛ISC-V 不再只是您甚至不知道的微型嵌入式微控制器,它存在于您的產(chǎn)品中,”RISC-V International 首席執(zhí)行官 Andrea Gallo 說?!癛ISC-V 已經(jīng)進(jìn)入了一個(gè)不同的階段。”
這得到了其他人的支持。“與往年相比,歐洲的工業(yè)與會(huì)者要多得多,”Synopsys 業(yè)務(wù)發(fā)展執(zhí)行董事 Larry Lapides 說。“內(nèi)容更多地來自行業(yè),這改變了會(huì)議的基調(diào)。我們看到的是,RISC-V 開始侵入我們五年前甚至沒有預(yù)料到的地方。
Gallo 提供了幾個(gè)重大進(jìn)展的例子。“英飛凌表示,他們正在將 RISC-V 用于汽車領(lǐng)域,”他說。“歐盟正在資助 HPC 項(xiàng)目和汽車項(xiàng)目。Meta 正在將其用于其加速器卡中的 AI。NVIDIA 估計(jì),去年,即 2024 年,他們的 GPU 出貨量將達(dá)到 10 億個(gè) RISC-V 內(nèi)核。
其他人強(qiáng)調(diào)了 RISC-V 在尖端處理器方面的重大進(jìn)步。“它不僅是低端處理器,而且在某些細(xì)分市場中,它還可以用作 GPU 的協(xié)處理器或加速器,”Synopsys 首席產(chǎn)品經(jīng)理 Mohit Wani 說?!癗VIDIA 在一次演示中表示,他們的產(chǎn)品組合中有近 30 種不同類型的功能,其中基于 RISC-V 的內(nèi)核正在為這 30 多種功能工作?!?/p>
一些業(yè)務(wù)和技術(shù)障礙仍然需要克服?!捌囆袠I(yè)越來越多地研究 RISC-V,”Fraunhofer IIS 自適應(yīng)系統(tǒng)工程部設(shè)計(jì)方法負(fù)責(zé)人 Roland Jancke 說?!八麄円恢豹q豫不決,因?yàn)?RISC-V 是一種開放式架構(gòu)。在汽車行業(yè),如果出現(xiàn)問題,您總是需要有人責(zé)備。如果您沒有單個(gè)提供商,而是一個(gè)社區(qū),那么這很困難。如今,由于可能降低成本,他們越來越多地關(guān)注 RISC-V,因?yàn)樵谄囶I(lǐng)域,您尋求每一分錢來降低價(jià)格。但是,您需要有一個(gè)生態(tài)系統(tǒng)。擁有能夠開發(fā)處理器的工具是不夠的,還有在此之上的軟件。RISC-V 正在取得進(jìn)展,但在 RISC-V 處理器成為汽車領(lǐng)域的主力軍之前,它還有很長的路要走。
然而,并不是每個(gè)人都認(rèn)為這非常值得注意。“RISC-V 不是 AI 的解決方案,不是用于訓(xùn)練,不是用于推理,”Quadric 首席營銷官 Steve Roddy 說?!癛ISC-V 只是另一個(gè)與 Arm、x86、MIPS、Xtensa 和 ARC 處理器相同的控制 CPU。后兩者還為設(shè)計(jì)人員提供了類似于 RISC-V 且優(yōu)于 RISC-V 的指令集定制能力。因此,RISC-V 沒有提供比其前身更好的技術(shù)性質(zhì)。
要結(jié)合這兩種極端觀點(diǎn),需要對行業(yè)的運(yùn)作方式有長期的了解?!癛ISC-V 有能力實(shí)現(xiàn) AI 發(fā)展,”Microchip Technology FPGA 部門系統(tǒng)架構(gòu)和嵌入式解決方案高級總監(jiān) Venki Narayanan 說?!八枰莻€(gè)。它在不斷發(fā)展。這些模型在學(xué)習(xí)和推理級別都在不斷發(fā)展。它需要各種數(shù)據(jù)類型、各種內(nèi)存元素、本地內(nèi)存,并且能夠以更快的方式進(jìn)行更多的自定義計(jì)算。如果你看一下,有各種各樣的方法可以做到這一點(diǎn)。RISC-V 通過特定領(lǐng)域的架構(gòu)實(shí)現(xiàn)了這一點(diǎn)。
獨(dú)特的機(jī)會(huì)
在芯片行業(yè)中,很少有沒有遺留軟件的應(yīng)用出現(xiàn)。然而,這就是 AI 發(fā)生的事情。此外,鑒于該技術(shù)的極端發(fā)展速度,在再次被顛覆之前,任何軟件都不可能建立起來。這為持續(xù)進(jìn)化和適應(yīng)創(chuàng)造了完美的環(huán)境。
“由于沒有傳統(tǒng)軟件需要支持,您真的可以根據(jù)工作負(fù)載定制處理器,而忽略不需要的東西,”Synopsys 的 Lapides 說?!霸诩軜?gòu)級別,甚至在微架構(gòu)級別,仍然有很多優(yōu)化可以完成,設(shè)計(jì)管道、緩存和內(nèi)存。而這一切都是在你開始做其他事情之前,在你開始實(shí)施之前。
RISC-V 帶來的自由度使架構(gòu)自由度成為可能。“AI 加速卡可以有大量的 RISC-V 內(nèi)核,甚至是同一集群中的不同內(nèi)核,”RISC-V International 的 Gallo 說?!澳憧梢杂袛?shù)百個(gè)小塊,每個(gè)小塊都有不同的 RISC-V 內(nèi)核,有些專門用于數(shù)據(jù)移入和移出,有些專門用于推理本身和處理。然后,您有了添加自定義指令的概念,這些指令允許您擁有非常高效的張量單元。這就是 RISC-V 如何影響芯片的架構(gòu)。
雖然 RISC-V 許可增加了成本優(yōu)勢,但這并不是唯一的原因?!八h(yuǎn)不止于此,”Synopsys 的 Wani 說?!叭绻憧匆幌录铀倨鬟B接到處理器的方式,就會(huì)發(fā)現(xiàn)它是通過一個(gè)快速的接口,而且通常是以內(nèi)存映射的方式。從開發(fā)人員的角度來看,如果您想在加速器上完成工作,您可以通過接口將數(shù)據(jù)和任務(wù)信息發(fā)送到加速器,然后等待加速器將您的結(jié)果發(fā)回。
但這種通信成本高昂,而且意味著內(nèi)核處于空閑狀態(tài)。“您浪費(fèi)了 30% 的時(shí)間發(fā)送數(shù)據(jù)和返回結(jié)果,”Wani 說?!叭绻梢员镜貓?zhí)行這些特定作,通過您自己的矢量管道發(fā)送數(shù)據(jù),然后直接連接到加速器,則可以避免所有這些時(shí)間。這種靈活性只存在于 RISC-V 世界中。
Quadric 的 Roddy 并不相信?!爱?dāng)應(yīng)用于 AI 應(yīng)用程序,尤其是推理應(yīng)用程序時(shí),所有控制 CPU 都受到同樣嚴(yán)重的限制,”他說?!癈PU 旨在以隨機(jī)代碼追蹤指針。它們不是矩陣或張量引擎。充其量,這些 CPU 提供 vector * vector 計(jì)算吞吐量。它們受傳統(tǒng)加載 / 存儲(chǔ)帶寬瓶頸的約束。因此,每種聲稱將 RISC-V 用于 AI 的方法都必須捆綁在一個(gè)單獨(dú)的矩陣引擎中,這引入了圖形分區(qū)問題,這是基于 CPU 的方法的致命弱點(diǎn)。解決 AI 問題的適當(dāng)創(chuàng)新是創(chuàng)建本質(zhì)上經(jīng)過 (matrix * matrix) 或 (tensor * tensor) 優(yōu)化的架構(gòu),并打破了以 CPU 為中心的對內(nèi)存緩存和推測性無序管道的依賴。
RISC-V 支持將這一部分封裝在傳統(tǒng)的控制處理器中?!拔覀兊囊恍┏蓡T已經(jīng)有了自定義張量指令,”Gallo 說。“這就是 RISC-V 的靈活性。您可以為特定工作負(fù)載開發(fā)自定義指令,然后承擔(dān)自定義特定應(yīng)用程序的全部擁有成本。標(biāo)準(zhǔn)化和擴(kuò)展規(guī)范也是有價(jià)值的,這樣我們就可以分擔(dān)維護(hù)編譯器、工具鏈和庫的成本。我們有 vector,我們正在研究 matrix,根據(jù)應(yīng)用程序用例,將有不同的 matrix 方法。如果是加速卡,如果是 AI IoT 應(yīng)用或邊緣 AI,將有不同的實(shí)現(xiàn)矩陣加速的方式。
由于沒有其他候選人,你得湊合著用。“數(shù)據(jù)流在 AI 和許多計(jì)算元件中非常重要,”Microchip 的 Narayanan 說?!坝?jì)算需求已經(jīng)增長,這需要以更節(jié)能的方式進(jìn)行。這不僅僅是指令、獲取、執(zhí)行和回寫的微架構(gòu)。它是您組織微架構(gòu)和數(shù)據(jù)流的方式。您如何傳入和傳出數(shù)據(jù) — 尤其是從一個(gè)層傳輸?shù)搅硪粋€(gè)層的大量數(shù)據(jù)。你不能繼續(xù)寫信給 DDR。
隨著 AI 的快速發(fā)展,需要有很大的靈活性?!靶枰愿咝Х绞綄?shí)現(xiàn)的模型類型正在增加,”Microchip AI 和通信部門負(fù)責(zé)人 Nilam Ruparelia 說?!白冃谓饎偸?ChatGPT 需要的,這就是 AI 流行的原因,但有一整套模型比變形金剛復(fù)雜得多。這些也需要更高的性能。例如,經(jīng)典的 CNN、RNN、LSTM 需要數(shù)學(xué)模塊架構(gòu)、DSP 模塊架構(gòu),以便更好地適應(yīng)這些變壓器或這些模型,以使性能更好。
AI 不僅僅是一個(gè)問題,靈活性仍然很重要?!癆I 有多個(gè)層次,”Narayanan 說?!澳阌蟹指?、對象檢測、分類、轉(zhuǎn)換器,所有這些都使用不同的數(shù)據(jù)類型。這些層是如何實(shí)現(xiàn)的?您如何有效地做到這一點(diǎn),以及如何在層之間進(jìn)出數(shù)據(jù)?這些都是你遇到的問題,這就是架構(gòu)如何幫助你構(gòu)建它。
它不僅包括作,還包括數(shù)據(jù)。“RISC-V 具有先天的優(yōu)勢,您可以在不違反 ISA 規(guī)范的情況下制作定制硬件,”Microchip 的 Ruparelia 說?!澳梢愿玫靥幚硖囟〝?shù)據(jù)類型,無論是在指令級別,還是在微架構(gòu)中,因此您正在為該類工作負(fù)載構(gòu)建自定義計(jì)算解決方案。這種靈活性在敏捷地應(yīng)對新數(shù)據(jù)類型方面發(fā)揮著重要作用,在不久的將來,它們將適用于不同類別的應(yīng)用程序。
但是,處理器優(yōu)化未來任務(wù)的全部要求仍然未知?!叭绻覀円獦?gòu)建一個(gè)用于邊緣推理的處理器,它可能會(huì)進(jìn)行分類、檢測、分割,甚至是某種轉(zhuǎn)換器,”Narayanan 說?!斑@些是固定層,我們知道計(jì)算元素旨在更加優(yōu)化并完成這些工作流程。我們構(gòu)建了一臺(tái)針對當(dāng)今需求進(jìn)行優(yōu)化的計(jì)算機(jī),但這并不意味著如果您有新的層、新的運(yùn)算符類型或類似的東西,我們就無法做到。只是它不會(huì)像你那樣設(shè)計(jì)它那樣高效。
生態(tài)系統(tǒng)
生態(tài)系統(tǒng)一直是某些應(yīng)用領(lǐng)域采用的主要障礙,但正在穩(wěn)步取得進(jìn)展。“我們將 Yocto 項(xiàng)目中的會(huì)員資格升級到了白金級別,”Gallo 說。“這是對生態(tài)系統(tǒng)的一個(gè)非常強(qiáng)烈的信息。Yocto 是最普遍的嵌入式 Linux 發(fā)行版。這是 Yocto 項(xiàng)目多年來首次添加新的 ISA、新的架構(gòu),成為白金會(huì)員意味著 RISC-V 將與其他架構(gòu)相提并論。Yocto 不僅用于嵌入式 Linux、邊緣 AI IoT,還用于消費(fèi)類機(jī)頂盒電視和汽車信息娛樂方面。
移動(dòng)設(shè)備正在迎頭趕上?!熬?Android 開發(fā)而言,Google 已將 RISC-V 打造成一等公民,”Wani 說?!半S著軟件堆棧的成熟,我們還將在移動(dòng)設(shè)備、筆記本電腦等熱門領(lǐng)域看到入門級應(yīng)用程序核心?!?/p>
當(dāng)足夠多的領(lǐng)導(dǎo)者介入時(shí),群體就會(huì)隨之而來?!癛ed Hat 宣布他們提供了適用于 RISC-V 的 RHEL 開發(fā)人員預(yù)覽版,”Gallo 說?!癋edora 可用于 RISC-V。去年 1 月,在歐洲的 FOSDEM 上,Canonical 透露,他們正在制定計(jì)劃,以使用 Ubuntu 支持 RVA23 配置文件。它傳達(dá)的信息是,RISC-V 已經(jīng)為應(yīng)用處理器和標(biāo)準(zhǔn)作系統(tǒng)做好了準(zhǔn)備。
正在進(jìn)行重大投資?!皻W洲另一個(gè)有趣的項(xiàng)目是 DARE 項(xiàng)目,”Lapides 說?!斑@將在未來五年內(nèi)注入 2.6 億至 2.8 億歐元。這三個(gè)主要供應(yīng)商都在構(gòu)建小芯片,而不僅僅是處理器 IP。一個(gè)是通用 CPU,一個(gè)是矢量加速器,一個(gè)是 AI 加速器。這些小芯片將被集成。具有新小芯片架構(gòu)的 RISC-V 很有趣。
結(jié)論
RISC-V 可能不是許多應(yīng)用程序的完美解決方案,尤其是與 AI 相關(guān)的應(yīng)用程序,但它可以提供一條進(jìn)化路徑。此外,沒有其他方法可以提供更好的選擇。
半導(dǎo)體行業(yè)很少有革命取得成功。通過擁有一個(gè)開放且不斷壯大的社區(qū),他們迅速發(fā)展出他們今天需要什么、他們認(rèn)為明天可能需要什么的定義,并著眼于地平線,他們可能能夠在不承擔(dān)太多風(fēng)險(xiǎn)的情況下到達(dá)他們最終需要的地方。通過采取一小步,生態(tài)系統(tǒng)可以跟上,并取得穩(wěn)步進(jìn)展。
評論