存儲新時代:利用RISC-V和內存結構實現(xiàn)開放式計算
前言
本文引用地址:http://m.butianyuan.cn/article/201807/383021.htm在過去的幾年里,我們目睹了數(shù)據的一系列巨大變化,包括數(shù)據如何被生成、處理以及進一步利用以獲取額外的價值和智能,而這些變化都受到以深度學習和神經網絡應用為基礎的新興計算模式所影響。這種深刻的變化始于數(shù)據中心,其利用深度學習技術來提供對海量數(shù)據的洞察,主要用于分類或識別圖像、支持自然語言處理或語音處理,或者理解、生成或成功學習如何玩復雜的策略游戲。這種變化催生了一批專門針對這些類別的問題而設計的高功效計算設備(基于GP-GPU和FPGA),后來還產生了可完全定制的ASIC,進一步加速并提高了基于深度學習的系統(tǒng)的計算能力。
大數(shù)據和快速數(shù)據
大數(shù)據應用采用專門的GP-GPU、FPGA和ASIC處理器透過深度學習技術來分析大型數(shù)據集,并揭示趨勢、模式和關聯(lián)性,從而實現(xiàn)圖像識別、語音識別等功能。因此,大數(shù)據是基于過去的信息或常駐在云端的靜止數(shù)據。大數(shù)據分析的一個常用的功能是執(zhí)行特定任務“訓練過的”神經網絡,例如識別和標記圖像或視頻序列中的所有面部,語音識別也展示了神經網絡的強大功能。
這種任務最好由專門的引擎(或推理引擎)來執(zhí)行,這種引擎直接駐留在邊緣設備上并由快速數(shù)據應用程序(圖1)來引導。通過在邊緣設備上處理本地所捕獲的數(shù)據,快速數(shù)據能夠利用來自大數(shù)據的算法提供實時決策和結果。大數(shù)據提供了從“過去發(fā)生了什么”到“將來可能會發(fā)生什么”所演繹出的洞察(預測分析),而快速數(shù)據則提供了能夠改善業(yè)務決策、運營并減少低效情形的實時行動,所以這一定會影響最終結果。這些方法可以適用于各種邊緣和存儲設備,例如照相機、智能手機和固態(tài)硬盤。
在數(shù)據上進行計算
新的工作負載基于兩種場景:(1)針對特定工作負載(例如圖像或語音識別)訓練大型神經網絡;以及(2)在邊緣設備上應用經過訓練的(或“適合的”)神經網絡。兩種工作負載都需要大規(guī)模并行的數(shù)據處理,其中包括大矩陣的乘法和卷積。這些計算功能的最佳實施方式需要在大矢量或數(shù)據陣列上運行的矢量指令。RISC-V就是一種非常適合于此類型應用的架構和生態(tài)系統(tǒng),因為它提供了一套由開源軟件支持的標準化過程,使得開發(fā)人員能夠完全自由地采用、修改甚至添加專有矢量指令。圖1中概述了一些顯而易見的RISC-V計算架構機會。
移動數(shù)據
快速數(shù)據和邊緣計算的出現(xiàn)產生了一個實際的后果,即:與云端之間來回移動所有數(shù)據進行計算分析并不是一件有效率的事。首先,在移動網絡和以太網中進行遠距離傳輸時,它涉及到相對較大的數(shù)據延遲傳輸,這對于必須實時操作的圖像識別或語音識別應用而言并不是理想的。其次,在邊緣設備上進行計算需要更易于伸縮的架構,其中,圖像和語音處理或者在SSD上進行的內存計算操作都可用一種伸縮的方式來進行。采用這種方式,每一臺新增的邊緣設備都會帶來所需要的增量計算能力,對數(shù)據移動方式和時間進行優(yōu)化是這種架構可伸縮性的一項關鍵因素。
圖1:大數(shù)據、快速數(shù)據和RISC-V機會
在圖1a中,云數(shù)據中心服務器利用在大型大數(shù)據集上訓練的深度學習神經網絡來執(zhí)行機器學習的功能。在圖1b中,邊緣設備中的安全攝像機采用經過大數(shù)據訓練的推理引擎來實時識別圖像(快速數(shù)據)。在圖1c中,智能固態(tài)硬盤設備采用推理引擎進行數(shù)據識別和分類,從而有效地利用了此設備的帶寬。圖1展示了RISC-V內核的潛在機會,它可以自由地添加專有的及未來標準化的矢量指令,這些指令對于處理深度學習和推理技術相當有效。
另一個類似且重要的趨勢是大數(shù)據端和云端上數(shù)據的移動及訪問方式(圖2)。傳統(tǒng)的計算機體系結構(圖2a)采用慢速外圍總線,該總線連接到許多其他設備(例如,專用機器學習加速器、圖形卡、高速固態(tài)硬盤、智能網絡控制器,等等)。低速總線會影響設備的利用率,因為它限制了總線本身、主CPU以及主要的潛在持久內存之間的通信能力。這些新型計算設備也不可能在它們之間或與主CPU共享內存,從而導致在慢速總線上進行徒勞且受限制的數(shù)據移動。
關于如何改善不同計算設備(例如CPU和計算機及網絡加速器)之間的數(shù)據移動,以及如何在內存或快速存儲中訪問數(shù)據,出現(xiàn)了幾個重要的行業(yè)趨勢。這些新趨勢集中在開放標準化工作上,能夠提供更快、更低延遲的串行結構以及更智能的邏輯協(xié)議,從而實現(xiàn)對共享內存的一致訪問。
新一代以數(shù)據為中心的計算
未來的架構將需要部署開放接口,以連接到持久性內存以及接入計算加速器并支持高速緩存一致性的快速總線(例如TileLink、RapidIO?、OpenCAPI?和Gen-Z),以期大幅度提高性能,而且使所有設備共享內存并減少不必要的數(shù)據移動。
圖2:計算體系結構中的數(shù)據移動和訪問
在圖2a中,傳統(tǒng)的計算體系結構由于把一條慢速外設總線用于快速存儲器及計算加速設備,其能力已達到其極限。在圖2b中,未來的計算體系結構采用了開放接口,能夠為平臺上所有的計算資源提供統(tǒng)一并支持高速緩存一致性的訪問方式來訪問共享持久內存,(這稱為以數(shù)據為中心的體系結構)。在圖2c中,所部署的設備能夠使用相同的共享內存,從而減少了不必要的數(shù)據復制。
CPU 外圍核心及網絡接口控制器的作用將成為支持數(shù)據移動的關鍵因素。CPU外圍核心組件必須支持密鑰內存和永久內存接口(例如NVDIMM-P),也必須支持駐留在CPU附近的內存。還需要實施面向計算加速器、智能網絡和遠程持久內存的智能快速總線。這種總線上的任何設備(例如CPU、通用或專用計算加速器、網絡適配器、存儲器或內存)都可以包含其自己的計算資源并具有訪問共享內存的能力(圖2b和圖2c)。
RISC-V技術正是優(yōu)化數(shù)據移動的關鍵推動因素,因為它能夠在所有的計算加速器設備上針對新的機器學習工作負載來執(zhí)行矢量指令。它實現(xiàn)了多種開源CPU技術,能夠支持開放內存和智能總線接口;且實現(xiàn)了以數(shù)據為中心具有一致性共享內存的體系結構。
利用RISC-V解決挑戰(zhàn)
大數(shù)據和快速數(shù)據為未來的數(shù)據移動帶來了挑戰(zhàn),也為RISC-V指令集架構(ISA)鋪平了道路。這種架構開放的、模塊化的方法非常適合用作以數(shù)據為中心的計算體系結構的基礎。它提供了以下功能:
· 擴展邊緣計算設備的計算資源
· 添加新的指令,例如用于機器學習工作負載的矢量指令
· 尋找非常接近于存儲器和內存介質的小型計算內核
· 支持新型計算范式以及模塊化芯片設計方法
· 支持新型以數(shù)據為中心的體系結構,其中所有的處理單元都可以透過一致的方式訪問共享的持久內存,從而優(yōu)化數(shù)據移動
RISC-V由超過100個組織機構的眾多成員共同開發(fā),這其中包含一個由軟件和硬件創(chuàng)新者組成的協(xié)作性社區(qū)。這些創(chuàng)新者能夠對ISA進行改編,使其適應特定的目的或項目。任何加入該組織的人都可以根據一份“Berkeley Software Distribution”(BSD軟件發(fā)布)許可證來設計、制造和/或銷售RISC-V芯片和軟件。
結語
為了實現(xiàn)其價值和可能性,數(shù)據需要捕獲、保存、訪問并轉換,以發(fā)揮其全部潛力。含有大數(shù)據和快速數(shù)據應用的環(huán)境已經使通用計算體系結構的處理能力相形見絀。未來以數(shù)據為中心的極端應用將需要針對特定用途設計的處理能力,以便以開放的方式支持數(shù)據資源的獨立擴展。
擁有一套以在持久內存中存儲的數(shù)據為中心的通用開放計算機體系結構,同時又能夠讓所有的設備發(fā)揮一定的計算作用,這是由新類型機器學習計算工作負載所推動的這些新型可擴展體系結構得以出現(xiàn)的關鍵因素??缭皆贫思斑吘壴O備各個部分的下一代應用都需要這種新型的低能耗處理方式,因為專門的計算加速處理器將能夠專注于處理其手邊的任務,從而能夠減少來回移動數(shù)據所浪費的時間,或者能夠執(zhí)行與數(shù)據無關的額外計算。通過發(fā)揮數(shù)據的力量、潛力和可能性,人類、社會以及我們的星球都能夠蓬勃發(fā)展。
評論