自動駕駛領域在近兩年被大家所熟悉,主要的市場誘導因素是Tesla在輔助智能駕駛和采用全視覺技術的影子模式為主的FAD(Full Auto Drive)的成功。我們認為,自動駕駛領域將是未來人工智能商業化落地非常重要的一個場景,并且能帶來百億級以上規模的企業的可能性非常之高。構建下一代人工智能基礎設施的架構與工業化成功成為一個新的熱點和行業內的必爭高地。
作者簡介:
作者為黑芝麻智能技術專家,系CCF高性能專委會委員、AAAI終身會員、中國智能計算產業聯盟核心會員、上海市人工智能專家委員會委員、中國信通院大模型標準制定委員會委員、國內DSA領域的早期推廣者與踐行者、中國最早將分布式深度學習系統進行商業化落地并取得一定的社會效益。
文章速覽:
? DSA成為下一代AI計算平臺的主流架構,加速異構計算
? DSA-oriented Unified AI stack作為統一的 AI 基礎軟件設施,解決碎片化問題
? 黑芝麻智能華山系列芯片采用多核異構架構
? 建設易用的以CXE為基礎的人工智能軟件基礎設施是AI落地的關鍵
? 打造非歐數據形式的融合算法模型是自動駕駛技術穩定產業化的基礎
從事自動駕駛解決方案和車載智能芯片的企業都看到了一個巨大的機會,那就是自動駕駛場景將產生海量的、復雜的、多樣的、高價值的數據。在當今數據即財富的時代,這一點給所有人帶來了無限的想象空間。怎么把數據變現成價值、如何將數據變現并實現商業化,成為所有人的命題。而人工智能技術是普遍被學術界和產業界都認可的用來解決這個問題的一個技術。所以,構建下一代人工智能基礎設施的架構與工業化成功成為一個新的熱點,成為行業內的必爭高地。
下一代人工智能基礎設施的特征
下一代人工智能基礎設施的重要特征,特別是面向自動駕駛或者機器智能領域,主要體現在:
1. Heterogeneous DSA(DSA: Domain Specific Architecture,下同)成為下一代AI計算平臺的主流架構,加速異構計算
2. DSA-oriented Unified AI stack成為下一代AI的基礎軟件設施,解決碎片化問題
3. 更廣泛算法網絡的統一與支持
DSA成為AI計算的主流架構
在過去的四十年的體系結構發展中,架構師們通過利用各種技術來提升單芯片算力、優化架構,但最終的效果不盡如人意,特別是在更多復雜應用場景的大數據時代和智能應用環境下,通用計算架構受到了前所未有的挑戰:
1、技術上,登納德定律失效導致了功耗的優化成為限制;摩爾定律失效使得芯片晶體管的提升受到限制;
隨著晶體管密度的增加,每個晶體管的能耗將降低,因此硅芯片上每平方毫米上的能耗幾乎保持恒定。由于每平方毫米硅芯片的計算能力隨著技術的迭代而不斷增強,計算機將變得更加節能。然而,登納德縮放定律從2007年開始大幅放緩,2012年左右接近失效(如下圖):
2、芯片體系架構上:指令集并行和單核性能優化已經成為瓶頸;阿姆達爾定律失效導致多核優化達到瓶頸;當前指令集和體系結構不能處理芯片安全問題;
根據“Iron law”可知,處理器的算力性能直接相關的參數就是:這個參數是指執行一個程序所花費的時間。該參數由以下的公式來決定:
在以上的公式中,右側式子的前兩項由指令集來影響,第三項由芯片制程和工藝來決定。在微架構中增加指令的亂序執行和指令級并行技術來提升算力的性能,也就是上述公式的前兩個因素。
3、應用場景上,海量的算力需求從PC和服務器時代,進化到物聯網、云計算和移動互聯網時代,海量的、多樣的計算形式被催生出來;當前的算力基礎設施及技術發展已經嚴重落后需求側的算力要求。
在這樣的環境下,數據流架構思想和技術由于更適合海量連續數據的處理、緩解內存墻問題的優勢,在當前的人工智能領域更加受到關注。融合了數據流架構的深度學習處理器也不斷地被設計和研發出來,用來解決不同場景下海量數據的算力“不足”問題。這些變化都是由于軟硬件融合的設計與系統更適合于當前應用場景下對算力資源的需求。
人工智能在大數據的環境下得到了爆發式的增長,為高級編程語言python和tensorflow等特定領域語言通過增加軟件重用、提高抽象級別,顯著地提高了生產力。在此應用環境下,編譯器與DSA體系結構更要進一步協同設計,專門解決該領域下的特殊特征。
特定領域的體系結構。一種以硬件為中心的設計思路是設計面向特定問題和領域的架構,并給予它們強大且高效的性能,因此它們是特定領域的體系結構(DSA),這是一種特定領域的可編程處理器,通常是圖靈完備的,但針對特定類別的應用進行了定制。DSA通常被稱為加速器,因為與在通用CPU上執行整個應用程序相比,它們可以加速某些應用程序。此外,DSA可以實現更好的性能,因為它們更貼近應用的實際需求,比如圖形加速單元(GPU),用于深度學習的神經網絡處理器(NPU),以及軟件定義網絡處理器(SDNs)。DSA效率更高、能耗更低是因為以下四個原因:
首先,DSA為特定領域的計算使用了更加有效的并行形式。例如單指令多數據并行(SIMD),因為它在一個時鐘步長內只需處理一個指令流和處理單元。DSA也可以使用VLIW方法來實現ILP(指令級并行),而不是推測性的亂序機制,當前AI處理器普遍采用in-order的流水線形勢。如前文所述,VLIW處理器與通用性代碼不匹配,但對于特定領域更加有效,因為它的控制機制更加簡單。與之相對的是,VLIW在編譯時執行必要的分析和調度,這對于顯式并行程序來說可以很好地工作。
其次,DSA可以更有效地利用內存層次結構。通用處理器的運行代碼,其中的存儲器訪問通常表現出空間和時間局部性,但在編譯時不是非常可預測的。因此,CPU使用多級高速緩存來增加帶寬,并掩蓋相對較慢的芯片外DRAM延遲。在那些編譯時可以很好地定義和發現內存訪問模式的應用程序中(這對于典型的DSL來說是常見的),程序員和編譯器可以比動態分配的緩存更好地優化內存的使用。
再次,DSA可以使用較低的精度。適用于通用任務的CPU通常支持32和64位整型數和浮點數數據。對于很多機器學習和圖像應用來說,并不需要如此高的精確度。例如在深度神經網絡中(DNN),推理通常使用4、8或16位整型數,從而提高數據和計算吞吐量。同樣,對于DNN訓練程序,浮點數很有意義,但FP32位就夠了。當前移動端的推理過程以INT8精度為主;數據中心應用端的推理過程以更廣泛的精度來滿足要求。
最后,DSA受益于以特定領域語言(DSL)編寫的目標程序,這些程序可以實現更高的并行性,更好的內存訪問的結構和表示,并使應用程序更有效地映射到特定域的處理器,這也需要面向DSA的編譯器的支持。
因此,體系結構領域的大佬(John Hennessy、David Patterson)、AI領域大佬(Jeff Dean、Cliff Young)在近幾年內連續發文或分享說明,當下是領域專用架構DSA的黃金時代(Golden Age)。
統一的 AI 基礎軟件設施
2019 年Chris Lattner(LLVM 發明者)提出來有關DSA架構下的編譯器的黃金時代:
在肯定了John Hennessy和David Patterson有關當下是DSA的黃金時代的判斷之后,Chris也隨之對適應于DSA架構的編譯器提出了新的方向:
隨著應用的爆發式發展、專用領域架構DSA的繁榮,比如AI和結構化計算技術發展領域,出現了標量加速和向量加速等多種層面的加速,當然現在還有多核CPU。這樣一來就會出現多種硬件組合,這些硬件就必須相互通信。但軟件還是很難充分利用它們來提高性能,而且如果軟硬件協同不到位,性能就會受到巨大影響。
我們需要下一代編譯器和編程語言來幫助解決這種碎片化。首先,計算機行業需要更好的硬件抽象,硬件抽象是允許軟件創新的方式,不需要讓每種不同設備變得過于專用化。
其次,我們需要支持異構計算,因為要在一個混合計算矩陣里做矩陣乘法、解碼JPEG、非結構化計算等等。然后,還需要適用專門領域的語言,以及普通人也可以用的編程模型。
最后,我們也需要具備高質量、高可靠性和高延展性的架構。
在經歷了科研范式的AI算法和場景落地之后,專業的工程化落地才是人工智能技術能力變現的唯一途徑。為了解決AI系統和工具的單一化和碎片化的問題,我們提出來建立統一開放的人工智能軟件基礎設施的目標:建設面向工程化的人工智能軟件基礎設施,包括編譯器、運行時,異構計算、邊緣到數據中心并重,并專注于可用性,提升開發人員的效率。
算法網絡的統一化與多樣化
下圖從深度學習算法的發展歷程來看,總結了自人工智能伊始到現在的主要的算法與網絡結構:
自2012年以后,以深度學習為基礎的算法和網絡帶來了空前的繁榮。
從過去幾年的商業化落地情況來看,算法的碎片化、場景個性化等等嚴重的問題導致了人工智能解決方案在工程化落地和市場化推廣方面的局限性。但是,2017年以來,特別是2020年以后,以 Transformer為基礎的各類大模型“霸占”各主要AI榜單的榜首,成為了名副其實的基礎模型。基礎大模型加上場景的小定制化越來越成為人工智能技術在商業化推廣中的使用范式。
當然,也有很多人質疑Transformer的可解釋性,也有人通過借鑒Transformer的思想反哺給CNN來進一步加速和提升,我們認為這都沒有問題,用戶更多地希望從準確率和效果上能有質的提升。CNN與Transformer在網絡架構方面的競爭追根溯源是卷積操作與通用矩陣乘積操作這兩種操作之爭。處理CNN卷積操作時,專用硬件架構有發揮空間,這也就是之前大家所熟知的為算法和應用而定制的AI加速器出現的原因;而隨著以GEMM為特征的Transformer網絡架構的推廣和規模化應用場景的挖掘,處理GEMM操作的較通用處理器可能更適合。當然兩種方向會長期存在,但最終以能效和成本為目標的客戶應用來說,通用硬件架構更有可能帶來降本增效的效果。
對于Transformer的出現,我們認為其意義重大的原因更多地在于,Transformer為算法工作者提供了一種新的思想和思路方式,在大數據訓練的情況下采用分布式的架構更適合當下人工智能算法的發展。
黑芝麻智能華山系列芯片采用多核異構架構
我們從以下三個維度進行闡述我們認為的下一代人工智能基礎設施的發展方向:
Heterogeneous DSA是未來異構計算的主流。
當前的計算架構正在由單一的體系架構往異構的架構發展、由單一芯片模式往融合異構多芯片模式發展。軟硬件融合、異構是當前體系結構發展的關鍵技術。
軟硬件融合是必然帶來以DSA為基礎的異構計算的繁榮。除了芯片和體系結構之外,編譯器、運行系統、編程語言等軟件系統也面臨著DSA帶來的技術迭代周期。
隨著應用場景的復雜性和異構計算技術的發展,我們需要解決以下四類問題:
1、 海量數據的高效處理:
2、 復雜數據的有效處理:
3、 海量計算的范式創新和提升:
4、 高價值數據的識別與價值變現:
黑芝麻智能兩大核心自研IP——車規級圖像處理器NeuralIQ ISP以及DynamAI NN車規級低功耗神經網絡加速引擎,賦能汽車看得更清、更遠、更懂。其中,NeuralIQ ISP可支持多達12路高清相機接入。每秒處理36億3曝光像素,12億單曝光像素的高處理率管道,并且每個管道可并行在線處理兩路視頻,支持在線、離線和混合處理模式。支持HDR處理,符合高動態曝光、低光降噪、LED閃爍抑制等高質量車規圖像處理要求,適用于智能駕駛環視感知、前視感知、駕駛監控等應用場景;DynamAI NN引擎具備大算力的架構,支持多形態、多精度運算。通過可適配量化、結構化剪裁壓縮、硬件可執行軟件的子圖規劃實現軟硬件同步優化。支持稀疏加速和配備自動化開發工具等優勢。
黑芝麻智能自動駕駛計算芯片SoC集成了多個加速器,有ARM、ARM Neon、GPU、NPU、DSP、ISP、VPU 等多個IP。NPU是主要用來處理AI相關workload的加速器,衡量一個NPU芯片的設計是否優化,業界有三個認可的設計原則:
1) 存儲層次化
2) 數據復用
3) 片上互聯
黑芝麻智能A1000芯片在設計層面已經充分地將以上三點融合并實現在SoC芯片內,包含多級緩存和數據存儲結構、高效的數據復用邏輯、統一片上NoC互聯結構將主要的IP進行并聯等。
我們堅定地認為DSA架構和軟件系統是更適合當前應用的思想和方法。充分融合DSA的思想、結合具體的領域場景,才可以構建出面向該領域的通用計算架構、高性能計算模型、高效的數據處理方式,才真正地讓用戶擺脫算力瓶頸、增強用戶體驗。
建設易用的以CXE為基礎的人工智能軟件基礎設施是AI落地的關鍵
軟件系統和工具鏈體系是量產化芯片走向成功的兩個極為重要的因素。而AI工具集體系和人工智能平臺是AI芯片最重要的軟件系統。能否充分發揮AI芯片的性能和能效是判斷AI工具集體系優劣的很重要的指標。黑芝麻智能構建了面向AI芯片的工具集系統和人工智能平臺:山海人工智能開發平臺,如下圖所示:
基于我們對行業knowhow的理解、對技術創新的信心,我們構建了面向異構加速計算平臺的軟件基礎設施:CXE(Compiler and eXecution Environment)。這解決了三個問題:
1. 數據處理需求與算力能力之間的不平衡
2. 數據處理格式與異構計算體系架構的不一致
3. 融合計算在模型正確性和數學一致性方面的統一,如人工智能計算、工程計算等
CXE 系統升級了AI工具鏈和優化系統、人工智能訓練系統等基礎軟件。
以自動駕駛應用場景為例:
我們基于底層的硬件平臺,可能是CPU(如 ARM、X86、RISC-V等)、GPU、DSP、NPU、ISP等等處理器或異構加速器,構建了面向人工智能和技術領域的以MLIR為基礎的人工智能編譯器系統、分布式調度機制為基礎的實時推理系統和運行時系統、融合了可解釋性為條件的分布式訓練和構建系統、可觀測可驗證可調試的輔助工具集合,這構成了以DSA為基礎的下一代人工智能基礎架構和平臺。
打造非歐數據形式的融合算法模型是自動駕駛技術穩定產業化的基礎
在過去幾十年的發展歷程中,人工智能技術主要解決的是以歐幾里得空間的數據形式的處理問題:
而物理世界和更廣泛的數據處理是非歐空間的數據處理問題:
為了更好地解決自動駕駛、機器智能的工程化問題和領域知識的智能化泛化問題,我們還需要解決計算密集型的工程數學和以強化學習為方向的Simulation的技術閉環問題。
由此可見,我們基于MLIR等框架構建了我們自控的編譯器/優化器和運行時系統,不僅支持AI workload相關的內存密集型的計算場景,而且支持如OpenCV、Halide等面向工業場景的計算密集型場景,還在圖優化領域支持靜態圖的編譯和高效轉換,正在對動態圖的處理進一步優化。未來在多復雜度數據處理場景、分布式計算場景、人工智能場景、邊緣計算領域等多個交叉和融合的領域內,將會產生更大的價值和現實意義。
“工欲善其事、必先利其器”。我們堅信,好的工具是構建基礎理論、驗證現實問題的至關重要的手段。通過構建先進的人工智能基礎設施和軟件系統,技術人員不僅可以高效完成人工智能場景化解決方案,而且還可以產生創新的靈感,創造性地完成新的場景、新的算法等,又可以解決有限時間下的工程交付需求。
開發工具鏈是否完善是體現黑芝麻智能芯片易用性的重要指標。配合華山系列自動駕駛計算芯片,黑芝麻智能發布的山海人工智能開發平臺。它擁有50多種AI參考模型庫轉換用例,降低客戶的算法開發門檻;能夠實現QAT和訓練后量化的綜合優化,保障算法模型精度;支持動態異構多核任務分配,同時還支持客戶自定義算子開發,完善的工具鏈開發包及應用支持,能夠助力客戶快速移植模型和部署落地的一體化流程。
- 審核編輯 黃宇
-
芯片
+關注
關注
455文章
50817瀏覽量
423682 -
AI
+關注
關注
87文章
30897瀏覽量
269113 -
DSA
+關注
關注
0文章
48瀏覽量
15158 -
異構
+關注
關注
0文章
40瀏覽量
13113
發布評論請先 登錄
相關推薦
評論