主流芯片架構(gòu)即將變天!
所有主要的芯片廠商和系統(tǒng)廠商都在改變方向
所有主要的芯片廠商和系統(tǒng)廠商都在改變方向,他們引發(fā)了一場架構(gòu)方面的競賽,包括了從向內(nèi)存中讀取數(shù)據(jù)的方法到數(shù)據(jù)的處理和管理方式,以及最終各種元素如何打包到單個芯片中等方方面面。盡管節(jié)點的縮小依然會持續(xù),但沒有人會為了應(yīng)對隨著各種傳感器和越來越多的機器間通信的爆炸式數(shù)據(jù)增長而把一切賭在擴展性上。
在這些改變之中,有一些值得我們注意:
新的處理器架構(gòu)專注于在每個時鐘周期內(nèi)處理大塊數(shù)據(jù),根據(jù)應(yīng)用程序的不同需要,有時可以選擇較低的精確度,或讓一些操作有更高的優(yōu)先級。
新的內(nèi)存架構(gòu)正在開發(fā),它將改變數(shù)據(jù)的存儲、讀取、寫入和訪問方式。
更多定向的處理元素被分散到系統(tǒng)中的各個部分,以配置到距離內(nèi)存最近的地方。以后會根據(jù)數(shù)據(jù)類型和應(yīng)用程序來選擇加速器。
AI方面也有許多研究,以期將不同數(shù)據(jù)類型混合在一起組成模式,從而有效地增加數(shù)據(jù)密度,并將數(shù)據(jù)間的差異降低到最低。
封裝(packaging)現(xiàn)在是架構(gòu)中的核心組成部分,而且越來越強調(diào)修改設(shè)計的方便性。
Rambus的杰出發(fā)明家Steven Woo說:“有幾個趨勢促使人們希望從已有方案中獲得最大的收益。在數(shù)據(jù)中心,人們希望壓榨硬件和軟件的一切性能。這使得人們重新認(rèn)識數(shù)據(jù)中心的經(jīng)濟模式。創(chuàng)新的代價非常高。但技術(shù)切換才是瓶頸,所以我們才會看到專用芯片,才會看到許多提高計算效率的方式。如果能減少內(nèi)存和輸入輸出之間的數(shù)據(jù)交換,就能帶來重大影響。”
邊緣設(shè)備的改變尤為明顯
這種改變在邊緣設(shè)備上尤為明顯,而系統(tǒng)廠商們突然發(fā)現(xiàn),幾百億的設(shè)備會將它們生成的一切數(shù)據(jù)都發(fā)到云端處理,這數(shù)據(jù)量顯然太大了。但在邊緣設(shè)備上處理巨大的數(shù)據(jù)量又提出了新的難題,必須在不顯著提高能量消耗的前提下提高處理性能。
Nvidia的Tesla產(chǎn)品線的首席平臺架構(gòu)師Robert Ober說,“現(xiàn)在的關(guān)注點是降低精確度。這不僅僅是要求更多的計算周期,而且要求在內(nèi)存中放入更多數(shù)據(jù),而且只能使用16比特的指令格式。因此并不能通過將數(shù)據(jù)放到緩存中的方式來提高效率。從統(tǒng)計上來說,兩種方式的結(jié)果是一樣的。”
Ober預(yù)測,通過一系列架構(gòu)上的優(yōu)化,在可預(yù)見的未來,完全可能做到每兩年處理速度提高一倍。“我們會看到最尖端的變化,”他說。
“為做到這一點,我們需要解決突破三個瓶頸。第一是計算。第二是內(nèi)存。某些型號中是內(nèi)存訪問,其他型號則是計算問題。第三就是宿主帶寬和I/O帶寬。我們需要做很多工作來優(yōu)化存儲和網(wǎng)絡(luò)。”
其中一些已經(jīng)實現(xiàn)了。在Hot Chips 2018會議上的一次演說中,三星Austin研發(fā)中心的核心架構(gòu)師Jeff Rupley指出了三星的M3處理器的幾個主要架構(gòu)變化。其中之一可以在每個時鐘周期中執(zhí)行更多指令,與它的前身M2的四條相比,M3能執(zhí)行六條。再加上分支預(yù)測功能(大致是幾個神經(jīng)網(wǎng)絡(luò)像執(zhí)行搜索中的預(yù)讀取一樣的功能),以及一個兩倍深的指令隊列,已經(jīng)有望解決這些問題。
從另一個角度來看,這些改變將創(chuàng)新的重心從制造和處理技術(shù)上轉(zhuǎn)移到前端架構(gòu)和設(shè)計,以及后端的制造后的封裝過程上。盡管處理技術(shù)上依然會有創(chuàng)新,但每個新的節(jié)點增加15%~20%的性能是非常復(fù)雜的,而且很難跟得上目前飛速增長的數(shù)據(jù)的速度。
Xilinx的總裁和CEO Victor Peng在Hot Chips的一次演講中說,“變化正在以指數(shù)的速度出現(xiàn)。每年都會產(chǎn)生10ZB(1021字節(jié))的數(shù)據(jù),其中絕大部分是無結(jié)構(gòu)的數(shù)據(jù)。”
內(nèi)存的新方法
處理這么多數(shù)據(jù)需要重新思考系統(tǒng)中從處理數(shù)據(jù)的方式到存儲方式的每個組件。
eSilicon EMEA的高級創(chuàng)新總監(jiān)Carlos Maciàn說,“在建立新的內(nèi)存架構(gòu)方面有過虛度歐嘗試。問題是,你需要讀取所有行,并從每行中選出一個比特。一種可選的方式是建立一種可以從左到右、從上到下讀取的內(nèi)存。還可以更進一步,將計算分布在距離各個內(nèi)存最近的地方。”
這些改變包括改變內(nèi)存的讀取方式、內(nèi)存的位置、處理元素的類型,以及使用AI來優(yōu)化整個系統(tǒng)中數(shù)據(jù)的存儲方式、位置、處理和移動的方法。
“如果對于稀疏數(shù)據(jù)的情況,我們能從內(nèi)存陣列中一次只讀取一個字節(jié),或者從同一個字節(jié)的通道中一次讀取連續(xù)的8個字節(jié),而不用將能量耗費在其他我們不感興趣的字節(jié)或字節(jié)通道上,會怎么樣?”Cadence的產(chǎn)品市場總監(jiān)Marc Greenberg說。
“未來可能對這種改變更感興趣。拿HBM2的架構(gòu)作例子,HBM2的晶圓堆疊組織為16個虛擬通道,每個通道為16比特寬,這樣不論訪問哪個通道,只需要拿到4個連續(xù)的64比特字即可。所以完全有可能構(gòu)建1024比特寬的數(shù)據(jù)陣列并水平寫入,同時在垂直方向上一次讀取四個64比特的字。”
內(nèi)存是馮諾依曼架構(gòu)中的核心部件之一,但也成了最大的試驗領(lǐng)域。AMD的客戶產(chǎn)品首席架構(gòu)師Dan Bouvier說,“最大的報應(yīng)之一就是虛擬內(nèi)存系統(tǒng),它用許多不正常的方式移動數(shù)據(jù)。你需要不斷進行地址轉(zhuǎn)換。而我們早已習(xí)慣了這一點。但如果能在DRAM中消除bank沖突,就能進行更有效的數(shù)據(jù)傳輸。所以,離散的GPU能將DRAM利用到90%的有效范圍,這已經(jīng)非常不多了。但如果數(shù)據(jù)傳輸能更流暢,那么APU和CPU也能達到80%~85%的有效范圍。”
IBM在研究另一種類型的內(nèi)存架構(gòu),本質(zhì)上是一種現(xiàn)代版的磁盤分割(disk striping)。這種架構(gòu)不再限制于單一內(nèi)存,而是利用一種連接技術(shù)適時地利用一切可以利用的內(nèi)存。
這種連接技術(shù)被IBM的系統(tǒng)硬件架構(gòu)師Jeff Stuecheli稱為連通性的“瑞士軍刀”。這種方法的有點是能使用不同種類的數(shù)據(jù)。
Stuecheli說,“CPU更像是坐鎮(zhèn)中央的高性能信號接口。如果修改了微架構(gòu),那么無需提高時鐘頻率,核心就能在每個時鐘周期內(nèi)做更多事情。”
連通性和吞吐量對于這些架構(gòu)處理不斷生成的數(shù)據(jù)極其重要。Rambus的Woo說,“現(xiàn)在的瓶頸位于數(shù)據(jù)移動中。整個行業(yè)在計算方面做得很出色。但如果不得不等待數(shù)據(jù),或等待某種數(shù)據(jù)模式,那內(nèi)存的速度就得加快。所以,對于DRAM和NVM來說,性能取決于數(shù)據(jù)流動的模式。對于流式訪問,內(nèi)存的效率就非常高。而跳來跳去的隨機訪問就沒那么快了。而且不論如何,隨著數(shù)據(jù)量越來越大,我們能做的只有提高速度。”
更多計算,更少移動
更復(fù)雜的問題是,邊緣設(shè)備會生成多種不同類型的數(shù)據(jù),這些數(shù)據(jù)以不同的速度和頻率生成。為了讓數(shù)據(jù)能在各種處理元素之間更流暢地移動,數(shù)據(jù)就必須以更有效的方式管理。
Arteris IP的主席兼CEO Charlie Janac說,“有四種主要的配置——多對多,內(nèi)存子系統(tǒng),低功耗輸入輸出,以及網(wǎng)格和環(huán)狀拓?fù)?。這四個部分可以放在同一個芯片內(nèi),這就是在制造物聯(lián)網(wǎng)芯片時的做法?;蛘撸梢栽黾右粋€高吞吐量的HBM子系統(tǒng)。但復(fù)雜度會大大提高,因為一部分負(fù)載依賴于具體的芯片,而每種芯片都會有多種特別的負(fù)載和針腳。比如一些物聯(lián)網(wǎng)芯片能處理海量的數(shù)據(jù),特別是比如汽車中的雷達和LiDAR芯片。沒有某種特別的高級連通功能,這些芯片就不可能實現(xiàn)。”
其中的難題是要盡可能減少數(shù)據(jù)移動,同時在不得不進行數(shù)據(jù)移動時,將數(shù)據(jù)的流量最大化,還要在本地處理和中央處理之間達成平衡,又不能消耗太多能量。
NetSpeed Systems的產(chǎn)品市場經(jīng)理Rajesh Ramanujam說,“一方面是帶寬問題。你會盡一切可能不移動數(shù)據(jù),所以會將數(shù)據(jù)移動到盡量靠近處理器的位置。但如果必須移動數(shù)據(jù),你會盡可能亞索數(shù)據(jù)。但這一切都不是天上掉下來的。這一切都要從系統(tǒng)的高度去審視。每一步都要從多個角度考慮,并要決定是按照傳統(tǒng)的讀寫方式使用內(nèi)存,還是使用更新的內(nèi)存科技。一些情況下,你必須改變存儲數(shù)據(jù)的方式本身。如果想要更快的性能,那這通常意味著更高的區(qū)域開銷,這會影響到能耗。接下來就得考慮安全性,還得考慮數(shù)據(jù)過載的問題。”
這也是為什么許多人關(guān)心在邊緣設(shè)備上進行處理以及多種處理元素之間的吞吐量問題。AI引擎可以在固態(tài)存儲上自行進行分析。
Marvell的主工程師Ned varnica說,“你可以在SSD控制器上直接將模型加載到硬件中,并進行硬件處理。今天,云服務(wù)中的主機就在這么做。如果每個驅(qū)動器都要向云端發(fā)送數(shù)據(jù),就會造成大量的網(wǎng)絡(luò)流量。所以最好讓邊緣設(shè)備自行處理數(shù)據(jù),這樣主機只需要發(fā)送包含元數(shù)據(jù)的命令即可。這樣,存儲設(shè)備越多,處理能力就越強大。降低網(wǎng)絡(luò)流量帶來的好處是巨大的。”
這種方式中非常值得一提的是,它強調(diào)了不同應(yīng)用程序的數(shù)據(jù)移動的靈活性。因此,主機可以產(chǎn)生任務(wù)并發(fā)送給存儲設(shè)備記性處理,之后只返回元數(shù)據(jù)或計算結(jié)果。還有一種場合是,存儲設(shè)備可以存儲數(shù)據(jù)、預(yù)處理數(shù)據(jù)并生成元數(shù)據(jù)、標(biāo)簽和索引,這些數(shù)據(jù)由主機獲取,用于未來的分析。
這只是其中一種選項。還有其他選擇。三星的Rupley特別強調(diào)了亂序執(zhí)行和混合慣用指令方式,后者可以一次解碼兩條指令,并混合為一個操作。
AI監(jiān)管和優(yōu)化
貫穿這一切的就是人工智能,它是芯片架構(gòu)領(lǐng)域中的最新特性。功能不再由操作系統(tǒng)和中間件管理,而是在系統(tǒng)層次上分布在芯片內(nèi)各個地方,以及分布在不同的芯片之間。某些情況下還可以在芯片內(nèi)部內(nèi)置神經(jīng)網(wǎng)絡(luò)。
eSilicon的市場副總裁Mike Gianfagna說,“實際上我們要做的就是把更多東西封裝在一起,改變傳統(tǒng)的方式。通過AI和機器學(xué)習(xí),我們可以把這一切分散在系統(tǒng)各個地方,獲得更有效、更可預(yù)測的處理。一些情況下可以使用系統(tǒng)中獨立的不同芯片,另一些情況下可以使用同一個封裝。”
Arm發(fā)布了它的第一個機器學(xué)習(xí)芯片,計劃于今年晚些時候在多個市場上發(fā)售。Arm的接觸工程師Ian Bratt說,“這是一種新的處理器。它有個基礎(chǔ)模塊,是一個計算引擎、MAC引擎和DMA引擎,再加上一個控制和廣播網(wǎng)絡(luò)。整體上一共有16個這樣的計算引擎,利用7納米技術(shù),能以1GHz的頻率處理4萬億條指令。”
由于Arm與生態(tài)系統(tǒng)合作伙伴合作,因此與仍在開發(fā)中的其他AI/ML芯片相比,它的芯片更具通用性和可配置性。
Arm并沒有將一切都放到宏內(nèi)核架構(gòu)中,它按照功能將處理分類,這樣各個計算引擎可以負(fù)責(zé)不同的功能。Bratt說有四個關(guān)鍵功能,分別是靜態(tài)任務(wù)調(diào)度、有效卷積、帶寬減少機制和為應(yīng)對未來的設(shè)計而出現(xiàn)的可編程機制。
同時,Nvidia采用了不同的路徑,他們在GPU旁邊建立了一個獨立的深度學(xué)習(xí)引擎,來優(yōu)化處理圖像和視頻時的流量。
結(jié)論
通過實現(xiàn)這些方法中的一部分或全部,芯片廠商說他們可以每兩年將芯片的性能提高一倍,從而跟上數(shù)據(jù)的爆炸式增長,同時保持芯片的功耗在一定范圍之內(nèi)。
這實現(xiàn)絕不僅僅是更多的計算機。它是整個芯片設(shè)計和系統(tǒng)工程的改變的起點,從此芯片開始跟隨數(shù)據(jù)的增長,而不是受限于硬件和軟件。
Synopsys的主席和副CEO Aart de Geus說:“當(dāng)計算機進入公司時,許多人感到整個世界發(fā)展得太快了。他們當(dāng)時還在一摞紙上進行會計工作。從那時就開始了指數(shù)級別的增長,而現(xiàn)在我們又會見到同樣的事情。
現(xiàn)在發(fā)展的東西,你可以認(rèn)為就是當(dāng)年由會計賬本向穿孔卡片的演化。在農(nóng)田里,你必須在正確的日期、氣溫上升的時候澆水施肥,這就是為什么以前機器學(xué)習(xí)沒有帶來明顯進步的原因。”
并不只他一個人給出了這種評價。西門子的子公司Mentor的總裁和CEOWally Rhines說,“人們最終會接受新架構(gòu)。新架構(gòu)最終會被設(shè)計出來。多數(shù)情況下這些架構(gòu)會包含機器學(xué)習(xí),就像你的大腦能從經(jīng)驗中學(xué)習(xí)一樣。我見過20多家公司利用他們自己特質(zhì)的AI處理器,每一種都有特定的用途。但你現(xiàn)在會在越來越多的應(yīng)用中看到他們,最終他們會挑戰(zhàn)傳統(tǒng)的馮諾依曼架構(gòu)。神經(jīng)元計算會成為主流,這是我們在提高計算效率、降低成本并提高移動性和互聯(lián)性方面的一大步。”