近期ARMv9架構發布,根據安謀官方的說法最新V9版本的ARM芯片具有安全計算、SVE2指令集和極致的性能優化三大特性,是十年來ARM最重要一次升級,并且還能繼續向華為供貨,不少媒體也沿用了ARM官方的說法,不過筆者竊以為這樣的說法聽聽就好,像性能極致優化、繼續供歡訓為等說法其實只是意義不大,而真正帶來革命的SVE2反而光芒被掩蓋了,
略顯雞肋的安全計算與性能升級
首先我們看到首先于2011年的ARMV8架構的確是革命性的創新,ARMv8中首次引入了AArch64架構,對于64位架構的ARM處理器產生的革命性提升,不過本次的升級當中所謂極致的性能優化其實是目前各大芯片設計廠商都已經在做的作業,其實并不算什么重大的創新點,
安全計算的理念倒是比較新,安全計算實際是計算機加了一個安全密室,即使擁有最高權限的管理員也不能進入安全密室,這樣的功能在計算機已經被完全攻破的情況其實意義不大,因為資料進出安全屋的情況,可以被外界一覽無遺,因此擁有最高權限的用戶完全可以通過行為分析破解安全屋內發生的事情,
供歡訓為,意義不大
筆者在之前的文章《造芯為何這么難》當中曾經介紹過在芯片制造幾大環節當中,我們最缺失的是工業軟體EDA和包括光刻機等方面在內的晶圓制造技術,在芯片設計的封裝、測驗方面其實我們做得還不錯,而ARMv9本身其實是一個IP CORE,而我們國產EDA中還沒有哪家能把ARMV9 CORE加入到元件庫當中,而且這樣的芯即使我們設計出來也造不出,華為買斷ARMV9 IP的意義其實不大,
A真正的殺招-SVE2
SVE2是一種SIMD指令集,SIMD是Single instruction multiple data也就是單指令多資料流的縮寫,我們知道傳統的CPU本質是將一切計算操作轉換成加法來完成完成任務的,比如減法是加一個有符合的負數,乘法是多個數相加,
但是在AI的神經網路世界中使用加法進行運算的擬合效率就太低了,以深度神經網路為例,神經元可以抽象為對于輸入資料乘以權重以表示信號強度乘積加總,再由ReLU、Sigmoid等應用激活函式調節,本質是將輸入資料與權重矩陣相乘,并輸入激活函式,對于有三個輸入資料和兩個全連接神經元的單層神經網路而言,需要把輸入和權重進行六次相乘,并得出兩組乘積之和,這實際上就是一個矩陣乘法運算,因此AI的運算中向量與矩陣的運算才是基礎,而VR虛擬現實技術也比較類似,它也需要不斷進行矩陣的變換操作所以說矩陣操作才是AI、VR等領域的最基礎算式,
我們看到針對AI計算的特殊性,各大科技巨頭在勵精圖治后都給出了自己的獨門絕技,比如華為就推出了“達芬奇架構”,具體來說,達芬奇架構采用3D Cube針對矩陣運算做加速,以N*N的矩陣乘法為例,3D Cube技術通過優化的運算單元,可以將運算復雜度直接降低冪級,這也造就了基于達芬奇架構的昇騰910芯片成為地表算力最強的AI芯片,
華為沒有公開昇騰910具體的細節,不過筆者判斷達芬奇架構應該沒有使用精簡指令集,因為據公開資料顯示昇騰910芯片的競品-谷歌TPU選擇了復雜指令集作為其架構基礎,谷歌創建了一個編譯器和軟體堆疊,將來自TensorFlow的API呼叫直接轉化成TPU指令,這也印證這樣一個邏輯,在AI的世界中幾乎所有的運算都需要對應的指令與電路進行專門的優化才能真正提升效率,
但這次ARM給出了不同的答案,我們在前文《疑難雜癥:雪崩是怎么造成》中曾經介紹過指令流水線的相關知識,而SIMD這種技術運用的也是流水線思想,只是這不是指令流水線了,而是資料流水線,他在一個時鐘周期內可以取多條資料并且并發進行操作,

SVE2的運算元可變長度的,從128-2048均可以,正如我們剛剛所說AI、VR等多需要矩陣運算,而64位長只能表示一個維度,多維矩陣的表示目前64位長的CPU力不從新,因此SVE2這項技術對于矩陣運算將大大提速.,可以說SVE2才是ARMV9最牛的地方,希望讀者們可以GET到這個點,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/273693.html
標籤:其他
上一篇:模擬實作vector
