本文由半導體產業縱橫(ID:ICVIEWS)編譯自semiengineering
RISC-V 或許并非許多應用的完美解決方案,但它或許能提供一條演進路徑。
業界越來越多地談論RISC-V架構帶來的好處,但它真的是一個正確的起點嗎?雖然它可能并不完美,但它或許能提供逐步推進所需的靈活性。
計算機架構和軟件的發展沿襲了 80 年前處理器的發展軌跡。它們旨在利用基礎技術來解決順序標量算術問題,只要有足夠的內存,這種技術就能解決任何有限問題。
芯片行業已表現出不愿放棄這種做法,尤其是在那些仍在使用50年前開發的軟件的行業。軟件范式和向后兼容性有著巨大的影響。編程花了幾十年的時間才以任何有意義的方式從單處理器遷移到多處理器架構,直到NVIDIA開發出CUDA,針對大規模并行處理器的應用程序才開始在高度專業化的應用程序之外進行開發。
那么,當許多應用程序的典型工作負載是數據流問題且控制量較小時,為什么業界需要另一種 CPU 架構呢?答案在于 RISC-V 架構可以有多種演進方式,其中一些方式可能支持緩慢遷移,而不是試圖跨越巨大的鴻溝。
幾周前,RISC-V 社區在歐洲舉行了年度峰會,展示了 RISC-V 日益廣泛的應用及其日益增長的影響力,尤其是在那些沒有太多遺留軟件阻礙其發展的應用領域。RISC-V 國際首席執行官 Andrea Gallo 表示:“RISC-V 不再只是你之前甚至都不知道的微型嵌入式微控制器,它已經融入到你的產品中了。RISC-V 已經進入了一個全新的階段。”
這一觀點得到了其他人的支持。“與往年歐洲的展會相比,今年的工業界參會者數量大幅增加,”新思科技業務發展執行總監 Larry Lapides 表示。“內容更多地來自工業界,這改變了會議的基調。我們看到,RISC-V 開始涉足一些五年前我們意想不到的領域。”
他舉了幾個重大進展的例子。“Infinium 表示他們正在將 RISC-V 用于汽車,”他說道。“歐盟正在資助 HPC 項目和汽車項目。Meta 正在其加速器卡中將其用于 AI。NVIDIA 估計,去年,也就是 2024 年,他們的 GPU 中 RISC-V 核心的出貨量將達到 10 億。”
其他人則強調了 RISC-V 在尖端處理器領域的重大進步。“它不僅應用于低端處理器,在某些領域,它還可以作為 GPU 的協處理器或加速器,”新思科技首席產品經理 Mohit Wani 表示。“NVIDIA 在一次演示中表示,他們的產品組合中有近 30 種不同類型的功能,而基于 RISC-V 的內核正在實現這 30 多種功能。”
一些商業和技術障礙仍需克服。“汽車行業越來越多地關注 RISC-V,”弗勞恩霍夫 IIS 自適應系統工程部設計方法負責人 Roland Jancke 表示。“他們一直猶豫不決,因為 RISC-V 是一個開放式架構。在汽車行業,如果出現問題,你總是需要有人來負責。如果你沒有單一的供應商,而是一個社區,這很難。今天,由于潛在的成本降低,他們越來越多地關注 RISC-V,因為在汽車行業,你會想方設法降低價格。然而,你需要有一個生態系統。僅僅擁有能夠開發處理器的工具是不夠的,還需要基于此的軟件。RISC-V 正在取得進展,但要讓 RISC-V 處理器成為汽車領域的主力,還有很長的路要走。”
然而,并非所有人都認為這一點值得關注。Quadric 首席營銷官 Steve Roddy 表示:“RISC-V 并非 AI 的解決方案——既不適用于訓練,也不適用于推理。RISC - V 只不過是另一種控制 CPU,與 Arm、x86、MIPS、Xtensa 和 ARC 處理器一脈相承。后兩者也為設計人員提供了與 RISC-V 類似甚至更勝一籌的指令集定制能力。因此,RISC-V 的技術特性并未使其比前代產品有顯著的提升。”
要將兩種極端觀點結合起來,需要對行業運作方式有長期的理解。“RISC-V 有能力推動 AI 的演進,”微芯科技 FPGA 部門系統架構和嵌入式解決方案高級總監 Venki Narayanan 表示。“AI 需要這種演進。它正在不斷發展。無論是在學習層面還是推理層面,模型都在不斷發展。它需要各種數據類型、各種存儲元素、本地內存,并且能夠以更快的方式進行更多自定義計算。如果你仔細觀察,就會發現有很多方法可以實現這一點。RISC-V 正通過特定領域的架構來實現這一點。”
獨一無二的機遇
在芯片行業,很少有應用能夠脫離傳統軟件而出現。然而,人工智能卻發生了這樣的事情。此外,鑒于技術發展速度之快,任何軟件都不可能在成熟之前就再次被顛覆。這為持續演進和適應創造了完美的環境。
Synopsys 的 Lapides 表示:“由于無需支持舊版軟件,你真的可以根據工作負載定制處理器,并省去不必要的功能。在架構層面,甚至在微架構層面,仍然可以進行大量優化,包括設計流水線、緩存和內存。而這一切都是在你開始其他事情、開始實施之前完成的。”
RISC-V 帶來的自由度實現了架構的自由。RISC-V International 的 Gallo 表示:“AI 加速器卡可以擁有大量的 RISC-V 核心,甚至可以在同一個集群內擁有不同的核心。你可以擁有數百個小模塊,每個模塊都是不同的 RISC-V 核心,一些模塊專用于數據傳入和傳出,一些模塊專用于推理本身和處理。然后,你就可以添加自定義指令,從而擁有非常高效的張量單元。這就是 RISC-V 影響芯片架構的方式。”
雖然 RISC-V 許可增加了成本優勢,但這并不是唯一的原因。“它的意義遠不止于此,”Synopsys 的 Wani 說道。“如果你觀察加速器連接到處理器的方式,你會發現它是通過一個快速接口,通常采用內存映射的方式。從開發者的角度來看,如果你想在加速器上完成工作,你需要通過接口將數據和任務信息發送到加速器,然后等待加速器發回結果。”
但這種通信成本高昂,而且意味著核心處于閑置狀態。“你浪費了30%的時間來發送數據并獲取結果,”Wani說。“如果你能原生地完成這些特定的操作,通過你自己的矢量流水線發送數據,然后直接連接到加速器,就可以避免所有這些時間。這種靈活性只存在于RISC-V的世界里。”
Quadric 的 Roddy 對此并不認同。“所有控制 CPU 在應用于 AI 應用,尤其是推理應用時,都會面臨同樣嚴重的限制,”他說道。“CPU 的設計初衷是追蹤隨機代碼中的指針。它們不是矩陣或張量引擎。這些 CPU 充其量只能提供向量 * 向量的計算吞吐量。它們受限于傳統的加載/存儲帶寬瓶頸。因此,每種聲稱使用 RISC-V 進行 AI 開發的方法都必須捆綁一個單獨的矩陣引擎,這會引入圖形分區問題,而這正是基于 CPU 的方法的致命弱點。應對 AI 問題的適當創新是創建本質上針對(矩陣 * 矩陣)或(張量 * 張量)進行優化的架構,并打破以 CPU 為中心對內存緩存和推測性亂序流水線的依賴。”
RISC-V 實現了這些功能,并將其封裝在傳統的控制處理器中。“我們的一些成員已經擁有自定義張量指令,”Gallo 說道。“這就是 RISC-V 的靈活性。您可以根據特定的工作負載開發自定義指令,然后承擔定制特定應用的全部擁有成本。標準化和擴展規范也很有價值,這樣我們就可以分擔維護編譯器、工具鏈和庫的成本。我們有矢量,我們正在研究矩陣,并且根據應用用例,將有不同的矩陣方法。無論是加速器卡,還是 AI IoT 應用或邊緣 AI,都會有不同的矩陣加速方法。”
由于沒有其他候選方案,你只能利用現有資源。Microchip 的 Narayanan 表示:“數據流在人工智能和許多計算元素中都非常重要。計算需求不斷增長,需要以更節能的方式實現。這不僅僅是指令、取指、執行和寫回的微架構。關鍵在于如何組織微架構和數據流。如何讓數據進出——尤其是大量數據從一層傳輸到另一層。你不能一直往前走,然后再寫回 DDR。”
隨著人工智能的快速發展,需要具備高度的靈活性。“需要高效實施的模型類型正在不斷增多,”Microchip 人工智能和通信部門負責人 Nilam Ruparelia 表示。“ChatGPT 需要 Transformer,這也是人工智能流行的原因,但市面上有很多模型的復雜度遠低于 Transformer。這些模型也需要更高的性能。例如,經典的 CNN、RNN 和 LSTM 需要數學模塊架構和 DSP 模塊架構,以便更好地適應這些 Transformer 或模型,從而大幅提升性能。”
人工智能并非只有一個問題,靈活性依然重要。“人工智能有多個層次,”Narayanan 說。“有分割、對象檢測、分類、轉換,所有這些都使用不同的數據類型。這些層次是如何實現的?如何高效地實現?如何在各個層次之間傳輸數據?這些都是我們要思考的問題,而架構正是幫助我們構建這些問題的。”
它不僅包含操作,還包含數據。“RISC-V 具有先天優勢,你可以在不違反 ISA 規范的情況下定制硬件,”Microchip 的 Ruparelia 表示。“你可以更好地處理特定數據類型,無論是在指令級,還是在微架構中,因此你正在為該類工作負載構建定制的計算解決方案。這種靈活性對于快速應對新數據類型至關重要,而且在不久的將來,新數據類型將陸續出現,適用于不同類型的應用程序。”
但處理器優化未來任務的全部要求仍然未知。“如果我們構建一個用于邊緣推理的處理器,它可能執行分類、檢測、分割,甚至某種變換,”Narayanan 說。“這些都是固定的層,我們知道計算元素的設計更加優化,并貫穿這些工作流程。我們構建了一臺針對當今需求進行優化的計算機,但這并不意味著如果你有一個新的層、新的運算符類型或類似的東西,我們就無法做到。只是它的效率不會像你當初那樣設計的那樣高。”
生態系統
生態系統一直是某些應用領域采用的一大障礙,但正在穩步推進。Gallo 表示。“這向生態系統發出了非常強烈的信號。Yocto 是最普及的嵌入式 Linux 發行版。這是 Yocto 項目多年來首次添加新的 ISA 和新架構,成為白金會員意味著 RISC-V 將與其他架構平起平坐。Yocto 不僅用于嵌入式 Linux、邊緣 AI 物聯網,還用于消費級機頂盒電視和汽車信息娛樂系統。”
移動領域正在迎頭趕上。“谷歌已經將 RISC-V 打造成為 Android 開發領域的一流技術,”瓦尼說道。“隨著軟件堆棧的成熟,我們還將在移動設備、筆記本電腦等熱門領域看到入門級應用核心。”
當足夠多的領導者加入時,其他領導者也會紛紛效仿。“Red Hat 宣布他們已經為 RISC-V 推出了 REL 開發者預覽版,”Gallo 說。“Fedora 也支持 RISC-V。去年 1 月,在歐洲的 FOSDEM 大會上,Canonical 透露他們正在制定計劃,讓 Ubuntu 支持 RVA23 配置文件。這意味著 RISC-V 已經為應用處理器和標準操作系統做好了準備。”
大量投資正在進行中。“歐洲另一個有趣的項目是DARE項目,”Lapides說道。“該項目將在未來五年投入2.6億至2.8億歐元。三家主要供應商都在構建芯片,而不僅僅是處理器IP。一個是通用CPU,一個是矢量加速器,還有一個是AI加速器。這些芯片將被集成。采用全新芯片架構的RISC-V很有吸引力。”
結論
RISC-V 或許并非許多應用(尤其是 AI 相關應用)的完美解決方案,但它或許能提供一條演進路徑。此外,目前還沒有其他方案能夠提供更好的替代方案。
半導體行業很少有革命能夠取得成功。通過建立一個開放且不斷發展的社區,人們能夠快速發展對當下需求、未來需求以及未來前景的定義,或許能夠在不承擔過多風險的情況下達到最終目標。通過循序漸進,生態系統能夠跟上步伐,穩步前進。
*聲明:本文系原作者創作。文章內容系其個人觀點,我方轉載僅為分享與討論,不代表我方贊成或認同,如有異議,請聯系后臺。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.