(文章來源:至頂網(wǎng))
在過去的幾十年中,計算性能的提高是通過更快、更精確地處理更大數(shù)量的數(shù)據(jù)來實現(xiàn)的。內(nèi)存和存儲空間現(xiàn)在是以千兆字節(jié)和兆字節(jié)來衡量的,而不是以千字節(jié)和兆字節(jié)。處理器操作64位而不是8位數(shù)據(jù)塊。然而,半導(dǎo)體行業(yè)創(chuàng)造和收集高質(zhì)量數(shù)據(jù)的能力比分析數(shù)據(jù)的能力增長得更快。
隨著人工智能的不斷發(fā)展,逐漸衍生出了一個新興技術(shù),那就是“內(nèi)存內(nèi)計算”。而近來,內(nèi)存內(nèi)計算也一度成了熱門的關(guān)鍵詞。早些時候,IBM就發(fā)布了基于相變內(nèi)存(PCM)的內(nèi)存內(nèi)計算,在此之后基于Flash內(nèi)存內(nèi)計算的初創(chuàng)公司也獲得高額融資;而在中國,初創(chuàng)公司也開始在做內(nèi)存內(nèi)計算方面的嘗試。然而“內(nèi)存內(nèi)計算”倒是什么東西?這種新技術(shù)的誕生,還要從馮 · 諾依曼體系和人工智能講起。
自從計算機(jī)誕生的那天開始,馮 · 諾依曼架構(gòu)的體系就占據(jù)著主導(dǎo)的地位。這種運(yùn)行計算方式是先把數(shù)據(jù)存入主存儲器,再按照順序從主存儲器中取出指令,然后一條一條地執(zhí)行。我們都知道,如果內(nèi)存的通訊速度跟不上CPU的性能,就會導(dǎo)致計算能力受到限制,這就是內(nèi)存墻了。同時在效能方面,馮 · 諾依曼體系也存在明顯的缺點,它讀寫一次內(nèi)存數(shù)據(jù)的能量,要比計算一次數(shù)據(jù)的能量多消耗了足足幾百倍。
而在現(xiàn)在人工智能的技術(shù)中,隨著數(shù)據(jù)量越來越多,計算量越來越大,原始的馮 · 諾依曼結(jié)構(gòu)正承受著越來越多的挑戰(zhàn)。硬件架構(gòu)不能指望計算量一大,就擴(kuò)展CPU。因為存儲量一變大,就馬上采用增大內(nèi)存來存儲的方式是對過去架構(gòu)的嚴(yán)重依賴,并且這種方式也非常不適合AI。當(dāng)容量大到一定程度,只能說明某些技術(shù)需要革新。從生物角度來講,大腦存儲了大量的知識,并且能夠快速訪問并提取,而大腦的內(nèi)存和計算是相容的。未來的計算機(jī)不是基于計算的memory,而是基于memory的計算。
同時,目前最主流的人工智能,也是對計算能力有著極高的要求。如果想讓人工智能用在移動端和嵌入式設(shè)備中,還有能耗大,發(fā)熱降頻等問題。這樣一來,內(nèi)存和效能就變成了馮 · 諾依曼計算機(jī)體系的一個瓶頸。為了解決這一系列的問題,于是就衍生出了傳說中的內(nèi)存內(nèi)計算。顧名思義就是把計算單元嵌入到內(nèi)存里面,這樣的話內(nèi)存既是一個存儲器,也是一個計算機(jī),它并不需要從內(nèi)存中讀取數(shù)據(jù),數(shù)據(jù)是直接進(jìn)出CPU的。不但不受內(nèi)存的性能限制,而且還提高了效能比(能源轉(zhuǎn)換的效率之比)。
人工智能專用的NPU(嵌入式神經(jīng)網(wǎng)絡(luò)處理器)SPR2801S就使用了內(nèi)存內(nèi)計算,這種技術(shù)還搭建了人工智能專用的APIM構(gòu)架,它的全稱是AI Processing In Memory。采用了APIM構(gòu)架的計算機(jī)不需要指令,也不需要總線和DDR(雙倍速率同步動態(tài)隨機(jī)存儲器),大數(shù)據(jù)就可以直接進(jìn)出CPU,極大地提高了效能比。此外,它還把算力提高到了5.6T ops,高效能比高達(dá)9.2T ops每瓦。Firefly基于這款SPR2801S則推出了人工智能開源主板AIO-3399EC,以及NCC S1 神經(jīng)網(wǎng)絡(luò)計算卡和USB神經(jīng)網(wǎng)絡(luò)計算棒,還搭配了模型訓(xùn)練工具PLAI。可以說,這些都加速了人工智能項目的落實。
雖然內(nèi)存內(nèi)計算現(xiàn)在還處于探索階段,但是人們在十余年之前就認(rèn)識到了“內(nèi)存墻”的問題,但是為什么內(nèi)存內(nèi)計算直到現(xiàn)在才被人們關(guān)注呢?小編認(rèn)為主要有兩點,第一個就是基于神經(jīng)網(wǎng)絡(luò)的AI的興起,尤其是人們都希望AI能普及到移動端和嵌入式設(shè)備中。而神經(jīng)網(wǎng)絡(luò)的其中1個特點就是對于計算精度的誤差有著比較高的容忍度,所以內(nèi)存內(nèi)計算的中引入的誤差一般都可以被神經(jīng)網(wǎng)絡(luò)所接受。內(nèi)存內(nèi)計算和人工智能,尤其是嵌入式人工智能,可以說是完美的結(jié)合。
第二個則是新存儲器分發(fā)展。對于內(nèi)存內(nèi)計算來說,存儲器的特性決定了它的效率,所以每當(dāng)帶有新特性的存儲器出現(xiàn)時,都會帶動內(nèi)存內(nèi)計算的發(fā)展。此外,從存儲器推廣的角度,新存儲器的誕生也愿意搭上人工智能的風(fēng)潮,這樣一來新存儲器的廠商也樂于看到有人做基于自家存儲器的內(nèi)存內(nèi)計算去加速人工智能,也會幫助一起推廣內(nèi)存內(nèi)計算。
內(nèi)存內(nèi)計算利用存儲器的特點,減少了人工智能在計算中的讀寫和操作,也正是因為內(nèi)存內(nèi)計算的精度受到了模擬計算的限制,所以它也是目前為止,最適合追求能效比以及能接受一定精確度損失的嵌入式人工智能的應(yīng)用。
(責(zé)任編輯:fqj)
-
內(nèi)存
+關(guān)注
關(guān)注
8文章
3028瀏覽量
74096 -
內(nèi)存計算
+關(guān)注
關(guān)注
1文章
15瀏覽量
12183
發(fā)布評論請先 登錄
相關(guān)推薦
評論