向量擴展將定稿,RISC-V機器學(xué)習(xí)的崛起
RISC-V作為一個與x86和Arm相比仍算年輕的架構(gòu),自然需要不少擴展模塊來完善其指令集架構(gòu),尤其是對標x86與Arm的SIMD指令集。然而SIMD指令集隨著時間的發(fā)展變得越來越臃腫,讓架構(gòu)變得愈發(fā)復(fù)雜,David Patterson也在幾年前的一篇文章中寫道,實現(xiàn)數(shù)據(jù)級并行性更優(yōu)雅的方式就是向量架構(gòu),RISC-V的向量擴展(RVV)也應(yīng)運而生。
在機器學(xué)習(xí)算法中,向量被廣泛用于處理數(shù)據(jù)集和數(shù)組。而RVV為基礎(chǔ)指令集新增了多個向量寄存器和向量指令,可以讓基于RISC-V架構(gòu)的處理器核心處理數(shù)組,與傳統(tǒng)的標量運算一起來加速大數(shù)據(jù)集的指令運算。
RISC-V向量擴展指令于2018年推出,在經(jīng)過了多個版本的迭代后,終于在幾天前進入了1.0 PB狀態(tài)。RVV工作組認同了1.0版本的穩(wěn)定性,已經(jīng)可以在上游軟件項目中開發(fā)相關(guān)的工具鏈、功能模擬器與實現(xiàn)了。而前段時間的RISC-V論壇,也展示了RISC-V在向量與機器學(xué)習(xí)上的進展。
RISC-V機器學(xué)習(xí)用于太空應(yīng)用
相信不少人都注意到近期逐漸增加的各項太空探索任務(wù),比如祝融號火星車與中國空間站建設(shè)等,這些任務(wù)中AI與機器學(xué)習(xí)的應(yīng)用也開始出現(xiàn)。然而將AI與機器學(xué)習(xí)加入太空任務(wù)依舊面臨著諸多挑戰(zhàn),比如已有的太空處理器已經(jīng)無法跟上AI與ML的計算需求,但現(xiàn)成的商用設(shè)備既無法滿足輻射要求,也沒有太空認證的軟件棧支持。
來自加泰羅尼亞理工大學(xué)和巴塞羅那超算中心的兩位研究員Leonidas Kosmidis和Marc Solé Bonet給出了他們的創(chuàng)新方案,實現(xiàn)了在功率有限的RISC-V處理器上加速ML運算。與采用額外大面積向量寄存器文件的傳統(tǒng)方式不同,他們采用了一個開源的短SIMD模塊通過重復(fù)利用整數(shù)寄存器文件來減小面積。這一方案以2個未使用的RISC-V操作碼實現(xiàn)了17個高度可配置的定制指令,可以用于實現(xiàn)ML應(yīng)用中200多種組合運算。
他們成功將該模塊移植到了Cobham Gaisler開發(fā)的開源RISC-V太空處理器NOEL-V上,在最小的NOEL-V處理器的配置下進行通用ML程序的測試,得出的結(jié)果相當可觀。只需多用到25%的面積,就能實現(xiàn)3到7倍的性能提升,還不會影響到處理器的頻率。
兩位研究員也實現(xiàn)了Gaisler另一個太空處理器LEON3的版本,該處理器采用的是SPARC V8的架構(gòu)。未來他們還計劃引入TensorFlow和編譯器代碼生成等一系列軟件支持,并在歐洲航天局OPS-SAT實驗衛(wèi)星上的FPGA上進行測試。
RISC-V向量處理器的真正挑戰(zhàn)
90年代可以說是DSP、CISC與DSP三家爭霸的狀態(tài),然而到了21世紀,DSP已經(jīng)越來越難突破GHz,而高頻CPU中乘積累加運算單元的流行使得DSP在性能上敗下陣來。而RISC與CISC相比的優(yōu)勢在于其簡單化的特性,更容易實現(xiàn)高頻率。然而在向量處理器(VPU)上,必須要解決數(shù)據(jù)傳輸?shù)膯栴}。
傳統(tǒng)VPU在帶寬上的瓶頸 / 晶心科技
從數(shù)據(jù)傳輸?shù)牧鞒虂砜?,系統(tǒng)總線已經(jīng)被處理器占用處于繁忙狀態(tài),而所有數(shù)據(jù)都通過緩存走向總線,現(xiàn)在又多出了向量指令和向量數(shù)據(jù),致使總線到內(nèi)存的延遲增加,整體性能下降。因此,提高總線帶寬的同時保持高頻率,又不會增加額外的功耗也就成了一大設(shè)計挑戰(zhàn)。傳統(tǒng)的解決方案有預(yù)讀取和更大的獨立內(nèi)存與緩存等,但往往需要犧牲功耗和尺寸。
晶心科技為了解決這一挑戰(zhàn),推出了晶心自定義擴展(Andes Custom Extension,ACE),這一RISC-V擴展可以創(chuàng)造新的指令、新的協(xié)處理器和新的內(nèi)存位置。ACE引入了全新的Streaming Port,為外部硬件引擎創(chuàng)造了自定義數(shù)據(jù)接口和自定義數(shù)據(jù)內(nèi)存,以很小的功率代價解決了數(shù)據(jù)傳輸問題。除此之外,ACE還可以用于數(shù)據(jù)預(yù)處理與后處理,比如格式轉(zhuǎn)換等,進一步提升VPU的性能,更好地控制和管理外部加速器。
結(jié)語
RISC-V在向量擴展與處理器上的進展已經(jīng)相當驚人,要知道蘋果在前段時間招募RISC-V開發(fā)者的工作描述中,不僅要求掌握RISC-V的開發(fā)知識,還要求了解Arm NEON SIMD微架構(gòu)的向量編程。隨著RVV的定稿,向量寄存器與指令也將全部確定下來,屆時相關(guān)的編譯器等工具鏈也能夠及時做到兼容。
RISC-V作為一個與x86和Arm相比仍算年輕的架構(gòu),自然需要不少擴展模塊來完善其指令集架構(gòu),尤其是對標x86與Arm的SIMD指令集。然而SIMD指令集隨著時間的發(fā)展變得越來越臃腫,讓架構(gòu)變得愈發(fā)復(fù)雜,David Patterson也在幾年前的一篇文章中寫道,實現(xiàn)數(shù)據(jù)級并行性更優(yōu)雅的方式就是向量架構(gòu),RISC-V的向量擴展(RVV)也應(yīng)運而生。
在機器學(xué)習(xí)算法中,向量被廣泛用于處理數(shù)據(jù)集和數(shù)組。而RVV為基礎(chǔ)指令集新增了多個向量寄存器和向量指令,可以讓基于RISC-V架構(gòu)的處理器核心處理數(shù)組,與傳統(tǒng)的標量運算一起來加速大數(shù)據(jù)集的指令運算。
RISC-V向量擴展指令于2018年推出,在經(jīng)過了多個版本的迭代后,終于在幾天前進入了1.0 PB狀態(tài)。RVV工作組認同了1.0版本的穩(wěn)定性,已經(jīng)可以在上游軟件項目中開發(fā)相關(guān)的工具鏈、功能模擬器與實現(xiàn)了。而前段時間的RISC-V論壇,也展示了RISC-V在向量與機器學(xué)習(xí)上的進展。
RISC-V機器學(xué)習(xí)用于太空應(yīng)用
相信不少人都注意到近期逐漸增加的各項太空探索任務(wù),比如祝融號火星車與中國空間站建設(shè)等,這些任務(wù)中AI與機器學(xué)習(xí)的應(yīng)用也開始出現(xiàn)。然而將AI與機器學(xué)習(xí)加入太空任務(wù)依舊面臨著諸多挑戰(zhàn),比如已有的太空處理器已經(jīng)無法跟上AI與ML的計算需求,但現(xiàn)成的商用設(shè)備既無法滿足輻射要求,也沒有太空認證的軟件棧支持。
來自加泰羅尼亞理工大學(xué)和巴塞羅那超算中心的兩位研究員Leonidas Kosmidis和Marc Solé Bonet給出了他們的創(chuàng)新方案,實現(xiàn)了在功率有限的RISC-V處理器上加速ML運算。與采用額外大面積向量寄存器文件的傳統(tǒng)方式不同,他們采用了一個開源的短SIMD模塊通過重復(fù)利用整數(shù)寄存器文件來減小面積。這一方案以2個未使用的RISC-V操作碼實現(xiàn)了17個高度可配置的定制指令,可以用于實現(xiàn)ML應(yīng)用中200多種組合運算。
他們成功將該模塊移植到了Cobham Gaisler開發(fā)的開源RISC-V太空處理器NOEL-V上,在最小的NOEL-V處理器的配置下進行通用ML程序的測試,得出的結(jié)果相當可觀。只需多用到25%的面積,就能實現(xiàn)3到7倍的性能提升,還不會影響到處理器的頻率。
兩位研究員也實現(xiàn)了Gaisler另一個太空處理器LEON3的版本,該處理器采用的是SPARC V8的架構(gòu)。未來他們還計劃引入TensorFlow和編譯器代碼生成等一系列軟件支持,并在歐洲航天局OPS-SAT實驗衛(wèi)星上的FPGA上進行測試。
RISC-V向量處理器的真正挑戰(zhàn)
90年代可以說是DSP、CISC與DSP三家爭霸的狀態(tài),然而到了21世紀,DSP已經(jīng)越來越難突破GHz,而高頻CPU中乘積累加運算單元的流行使得DSP在性能上敗下陣來。而RISC與CISC相比的優(yōu)勢在于其簡單化的特性,更容易實現(xiàn)高頻率。然而在向量處理器(VPU)上,必須要解決數(shù)據(jù)傳輸?shù)膯栴}。
傳統(tǒng)VPU在帶寬上的瓶頸 / 晶心科技
從數(shù)據(jù)傳輸?shù)牧鞒虂砜?,系統(tǒng)總線已經(jīng)被處理器占用處于繁忙狀態(tài),而所有數(shù)據(jù)都通過緩存走向總線,現(xiàn)在又多出了向量指令和向量數(shù)據(jù),致使總線到內(nèi)存的延遲增加,整體性能下降。因此,提高總線帶寬的同時保持高頻率,又不會增加額外的功耗也就成了一大設(shè)計挑戰(zhàn)。傳統(tǒng)的解決方案有預(yù)讀取和更大的獨立內(nèi)存與緩存等,但往往需要犧牲功耗和尺寸。
晶心科技為了解決這一挑戰(zhàn),推出了晶心自定義擴展(Andes Custom Extension,ACE),這一RISC-V擴展可以創(chuàng)造新的指令、新的協(xié)處理器和新的內(nèi)存位置。ACE引入了全新的Streaming Port,為外部硬件引擎創(chuàng)造了自定義數(shù)據(jù)接口和自定義數(shù)據(jù)內(nèi)存,以很小的功率代價解決了數(shù)據(jù)傳輸問題。除此之外,ACE還可以用于數(shù)據(jù)預(yù)處理與后處理,比如格式轉(zhuǎn)換等,進一步提升VPU的性能,更好地控制和管理外部加速器。
結(jié)語
RISC-V在向量擴展與處理器上的進展已經(jīng)相當驚人,要知道蘋果在前段時間招募RISC-V開發(fā)者的工作描述中,不僅要求掌握RISC-V的開發(fā)知識,還要求了解Arm NEON SIMD微架構(gòu)的向量編程。隨著RVV的定稿,向量寄存器與指令也將全部確定下來,屆時相關(guān)的編譯器等工具鏈也能夠及時做到兼容。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
處理器
+關(guān)注
關(guān)注
68文章
18927瀏覽量
227245 -
ARM
+關(guān)注
關(guān)注
134文章
8967瀏覽量
365054 -
RISC-V
+關(guān)注
關(guān)注
44文章
2141瀏覽量
45712
發(fā)布評論請先 登錄
相關(guān)推薦
加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未來 !
加入RISC-VAdvocate行列!我們正在尋找來自世界各地的RISC-V愛好者,通過全球推廣和參與,成為支持RISC-V進步的關(guān)鍵參與者。作為一名RISC-VAdvocate,您將
RISC-V指令集的特點總結(jié)
各種應(yīng)用場景,從嵌入式系統(tǒng)到高性能計算,都可以通過添加專門的指令擴展來優(yōu)化性能。
分層設(shè)計
定義:RISC-V 架構(gòu)采用了分層設(shè)計方法,基本指令集可以通過額外的擴展層來增強功能,如浮點運算、向
發(fā)表于 08-30 22:05
RISC-V Summit China 2024 | 青稞RISC-V+接口PHY,賦能RISC-V高效落地
更好的使用體驗:
1. 青稞RISC-V首先針對高速數(shù)據(jù)傳輸場景,通過免表中斷提升了MCU的響應(yīng)速度;
2. 針對藍牙和以太網(wǎng)等協(xié)議棧應(yīng)用,擴展自定義指令提升了代碼密度;
3. 率先設(shè)計的兩線調(diào)試
發(fā)表于 08-30 17:37
risc-v的發(fā)展歷史
RISC-V v2.1,增加了對64位體系結(jié)構(gòu)的支持,并提供了更詳細的文檔和規(guī)范。
2017年:RISC-V基金會推出了RISC-V v2.
發(fā)表于 07-29 17:20
RISC-V適合什么樣的應(yīng)用場景
設(shè)計使得開發(fā)者可以靈活選擇所需的指令集和模塊,以滿足嵌入式系統(tǒng)的各種性能要求。
3. 人工智能(AI)和機器學(xué)習(xí)(ML)
高性能計算:RISC-V結(jié)合AI加速器或協(xié)處理器,可以提供高效的人工智能計算
發(fā)表于 07-29 17:16
RISC-V在中國的發(fā)展機遇有哪些場景?
。RISC-V結(jié)合AI加速器,可以在AI領(lǐng)域提供高效的計算解決方案。
定制化需求:RISC-V允許添加專門的加速器或協(xié)處理器來處理特定任務(wù),如圖像處理或機器學(xué)習(xí),這對于AI應(yīng)用來說非常
發(fā)表于 07-29 17:14
為什么要有RISC-V
的,永遠不會改變。這為編譯器編寫者,操作系統(tǒng)開發(fā)人員和匯
編語言程序員提供了穩(wěn)定的目標。模塊化來源于可選的標準擴展,根據(jù)應(yīng)用程序的需要,硬件可以包含或不包含這些擴展。這種模塊化特性使得RISC-V具有了
發(fā)表于 07-27 15:05
RISC-V的MCU與ARM對比
和實現(xiàn)。這意味著RISC-V具有高度的靈活性和可定制性,可以根據(jù)不同的應(yīng)用需求進行優(yōu)化和擴展。
ARM :ARM是一種專有的架構(gòu),任何想要使用ARM的指令集或?qū)崿F(xiàn)的設(shè)計者都必須向ARM公司支付版權(quán)費
發(fā)表于 05-27 15:58
risc-v多核芯片在AI方面的應(yīng)用
應(yīng)用中的成本。
最后,RISC-V多核芯片不僅可以應(yīng)用于AI邊緣計算領(lǐng)域,還可以擴展到其他領(lǐng)域,如數(shù)據(jù)中心、云計算、自動駕駛、機器人等,為這些領(lǐng)域提供高效、靈活和安全的解決方案。
總的來說,R
發(fā)表于 04-28 09:20
RISC-V 基礎(chǔ)學(xué)習(xí):RISC-V 基礎(chǔ)介紹
是什么?
RISC-V 是一套開放許可證書、免費的、由基金維護的、一個整數(shù)運算指令集外加多個擴展指令集的CPU 結(jié)構(gòu)規(guī)范(ISA)。
整數(shù)運算指令集 + 擴展指令集
任何硬件開發(fā)商或者組織都可以
發(fā)表于 03-12 10:25
學(xué)習(xí)RISC-V單片機的感想
RISC-V,以及國內(nèi)開始的自研其它架構(gòu)單片機。國內(nèi)有些企業(yè)自研的架構(gòu),還沒有機會學(xué)習(xí)和使用。期待有機會試試,比如華為的處理器、龍芯等?,F(xiàn)在使用最多的還是51的和ARM的。ARM的一直都在不斷發(fā)展中,有各種
發(fā)表于 02-17 21:00
【RISC-V開放架構(gòu)設(shè)計之道|閱讀體驗】匯編語言和擴展指令集
【RISC-V開放架構(gòu)設(shè)計之道|閱讀體驗】匯編語言和擴展指令集
匯編語言
將C語言翻譯成可執(zhí)行的機器語言的重要步驟包括編譯過程,匯編過程,鏈接過程。
函數(shù)調(diào)用約定過程分為六個階段:
1)將參數(shù)存放
發(fā)表于 02-03 13:29
什么是RISC-V
siFive搞RISC-V
賽昉搞RISC-V
香山搞RISC-V
到底什么是RISC-V?
先不問有什么用,RISC-V目前的能力來說,工
發(fā)表于 02-02 10:41
【RISC-V開放架構(gòu)設(shè)計之道|閱讀體驗】RISC-V基礎(chǔ)整數(shù)指令集
分支的B型,用于長立即數(shù)的U型和用于無條件跳轉(zhuǎn)的J型。
下面是本章的思維導(dǎo)圖:
RV32I是RISC-V的基礎(chǔ)指令集,后續(xù)會繼續(xù)拓展RISC-V的其它指令集擴展。
發(fā)表于 01-31 21:10
【RISC-V開放架構(gòu)設(shè)計之道|閱讀體驗】一本好書,開卷有益
大學(xué)教授的推薦并得到各方好評,這更堅定了深入了解學(xué)習(xí)RISC-V的信心。
書中在目錄前RISC-V指令集參考卡,做下瀏覽與了解,這里一并貼出。
RISC-V的目標是成為一款通用的指
發(fā)表于 01-21 17:03
評論