2021-08-31
縱觀時代演進的脈絡,從農業(yè)革命到工業(yè)革命再到知識革命,從遠(y離錢uǎn)古結繩計數到古代珠算與機械計算再到現在的電子(zǐ)計算,數學一直是人高兵類文(wén)明進步的主要力量。當今時代白關,算力作為新型生産力,數據作為新的生産要素,參與頻高價值創造和(hé)分配,信息技術(shù)成為了驅也雜動(dòng)經濟社會發展的基礎動(dòng)力。
随着5G、人工智能、雲計算、大數據、IoT等技術(shù)的推動(dòng),萬物工還互聯的時代即将到來,算力需求将越來越大,有望替代熱力、電力,成為拉動紙山(dòng)數字經濟向前發展的新動(dòng)能、新引擎,并成為影響國家綜合志也實力和(hé)國際話語權的關(guān)鍵要素,國與國的核心競争力正在聚焦于以技國計算速度、計算方法、通(tōng)信能力、存儲能力為代表的媽行算力,未來誰掌握先進的算力,誰就掌握了發展的主動(dòng)權。
本文(wén)将梳理人工智能的發展曆程和(hé)關(guān)鍵坐南要素,并聚焦人工智能芯片的種類和(hé)技術弟呢(shù)路(lù)線,詳細闡述為什麼GPU是AI時代的算力核心。
圖1:20世紀40年代起,人類社會進入知識革命時代
人工智能與深度學習
人工智能(Artificial Intelligen房湖ce),是研究、開發用于模拟、延伸和(hé)擴展人的智能的理紙作論、方法、技術(shù)及應用系統的一門新的技術(shù)科學。它起源于工媽20世紀五六十年代,經過半個(gè)多世紀的演變,經曆黑北了符号主義、連接主義和(hé)行為主體三次浪潮新道的相互交織發展,到如(rú)今,作為一項新興的通(tōng)用技術(s理飛hù),正在推動(dòng)着社會生活與各行各業(yè)的巨海秒變。現階段人們普遍認為,深度學習+大規模計算+大數據=人工智能。
圖2: 人工智能發展的三次浪潮
什麼是深度學習?在人工智能領域,機器(qì)學習是其中(報員zhōng)的一個(gè)技術(shù)流派,通(tōng)過從已知樣本中月遠(zhōng)提煉規律來獲得判斷未知樣本的店靜智能;深度學習則是機器(qì)學習的一種,它所學黃什習出來的模型是深度神經網絡。
圖3: 人工智能、機器(qì)學習、深度學習的關(guān)系
具體來說,機器(qì)學習可(kě)以理解為機器(愛的qì)從已知的經驗數據(樣本)中(zhōng),通(tōng)過某種特定的方法湖藍(算法),自己去尋找提煉(訓練/學習)出一些規律(模型);提煉出的規律就可作著(kě)以用來判斷一些未知的事情(預測),自2006年以來,機器(qì)學習領域深度學習(Deep Learning)取得了突破性的進展。
深度學習是一種特殊的機器(qì)學習,在語音和(hé算暗)圖像識别方面取得的效果,遠(yuǎn)遠跳分(yuǎn)超過先前相關(guān)技術(shù)。它通(tōng明場)過學習将世界表示為嵌套的概念層次結構來實現強大的功能和(hé)靈活性,每木費個(gè)概念都是根據更簡單的概念進行定義的,而更在資抽象的表示則用不那麼抽象的概念計算出來。這山
深度學習算法分「訓練」和(hé)「推理」兩個(通舞gè)過程。簡單來講,人工智能需要以大數據為基礎,通(tōng)過「訓練嗎個」得到各種參數(也就是模型),然後把模型傳遞給「推理」部分,得到最終結果站中。
神經網絡分為前向計算(包括矩陣相乘、卷積、循環層)和(hé理現)後向更新(主要是梯度運算)兩類,「訓練」是兩者兼而有之,「推理」主要是前向那坐計算,都包含大量并行運算。一般來說,「訓練+推理」在雲端進行,終端人工智能硬件隻負責「推理」。
圖4: 人工智能技術(shù)發展的裡程碑事件
算力:人工智能的核心要素
近年來,随着深度學習的推進,AI領域對算力的要求每年增加10倍左右。為了達到這個(gè)目标,我們需輛白要處理大量的數據。因此,人工智能三大要素:算法、算力和(hé)大數據,裡算缺一不可(kě),都是人工智能能夠實現大規模應又男用的必備條件。
數據。人類要獲取一定的技能都必須經過不斷的訓練,才你黑能熟能生巧,AI也是如(rú)此。人工智能的根基是訓練,隻有如吃經過大量的訓練,神經網絡才能總結出規律,應用到新的樣本上。隻有視冷擁有大量數據,且能覆蓋各種可(kě)能的嗎現場景,才能得到一個(gè)表現良好的智能模型。
算力。有了數據之後,需要進行不斷的重複的訓練。深度學習中(zhōng)有三個不多(gè)概念叫Epoch(“一代訓練”),Batch(“一批數據”),Iteration(“一次訓練”)。僅僅将訓練集從頭到尾訓練一遍是不夠的,需要把訓練集翻來化愛覆去訓練很多輪。訓練和(hé)推理都需要強大算力的支撐。
算法。神經網絡算法和(hé)深度學習是目前最主流的人工智能算法。
算力是人工智能的三大要素之一,需要芯片的支撐,這是人工秒子智能進一步發展并實現産業(yè)化的關(guān)鍵。
芯片:人工智能競争的制高點
AI芯片提供算力,承載算法,是實現人工智能的物理載體,因此是人工智頻靜能領域競争的制高點。
什麼是AI芯片?從廣義上說,所有面向AI應用的芯片都可(kě)以稱為AI芯片,但目前人們普遍認為,AI芯片是針對AI算法做了特殊加速設計的芯片。AI深度學習需要很高的并行計算、浮點計算以及矩陣運算能力,懂做基于CPU的傳統計算架構無法充分滿足人工智能高性能并行計算(HPC)的需求,因此需要發展适合AI架構的專屬芯片。
對于人工智能計算架構來說,CPU配合加速芯片的模式是典型的AI部署方案:CPU提供算力,加速芯片提升算力并助推算法的産生。常見的AI加速芯片按照技術(shù)路(lù)線可(kě)以分為商多GPU、FPGA、ASIC三類。其中(zhōng),應用于圖形、圖村雜像處理領域的GPU 可(kě)以并行處理大量數據,非常适合深度學習的高并行、高本地頻關化數據場景,是目前主流的人工智能計算架構。
GPU用于大量重複計算,由數以千計的更小、更高效的核心組成大規模并行有電計算架構,配備GPU的服務器(qì)可(kě)取代數百台通(tōng)用CPU服務器(qì)來處理高性能計算和(hé)AI業(yè)務。
FPGA是一種半定制芯片,靈活性強集成度高,但運算量小,量産成本高拿又,适用于算法更新頻繁或市場規模小的專用領域。
ASIC專用性強,适合市場需求量大的專用領域,但開發周期較長且難度極高。
圖5:GPU、FPGA、ASIC技術(shù)路(lù)線比較
GPU:最适合AI深度學習的異構芯片
GPU與GPGPU的定義
GPU(Graphics Processing Unit,圖形處理器(qì))是進行圖像圖形相關內新(guān)運算工作的微處理器(qì),最初用途是将計算機系雪公統需要顯示的信息進行轉換驅動(dòng),從而控制顯示器(qì)民區的正确顯示。
GPGPU(General-Purpose Computing on Gr那筆aphics Processing Units,通(tōng)用計算圖形處理器(qì))用專門處理圖形任務的處理器(qì)吃他,運行圖形渲染之外的通(tōng)用計算任術下務,這些通(tōng)用計算常常與圖形處理沒有玩年任何關(guān)系。
GPU的特點是并行處理能力強、計算能效比高,并且有很大的存儲帶寬。某些應用友一,例如(rú)人工智能(機器(qì)學習)模型訓練與推理、高性能計算等,往往是湖看大數據流應用,這時,用GPGPU解決這類問(wèn)題,就比CPU效率更高,它對于用傳統語言編寫的、軟件形式的計算有較好的支持,具有高農子度的靈活性。
目前GPGPU廣泛應用于高性能計算、行業(yè)AI應用、安防與政府項目、互聯網及雲數據中(zhōng)心等。綠金其主要應用場景:一是人工智能模型訓練與推理;二是高性能計算短年。
圖6:GPU的廣泛應用
GPU的結構
由于CPU在圖像渲染方面能力不足,GPU被發明出來分擔這部分工作,在屏幕上進行多邊形圖像渲吧醫染,其本質就是并行處理簡單任務:每個(gè)像素點的色彩可(紙裡kě)以獨立計算,不需要考慮其它像素點。有了這樣上千個(gè)簡一行單的核心,再配合合适的代碼,就能處理超大規模的數學運算,實聽的現逼真的遊戲體驗。
由于CPU有通(tōng)用性的需求,其單個(gè)核心往往會設計得大而全;加上吧嗎CPU計算的特性,核心中(zhōng)有很大一部分面積用外家來構建緩存(包含L1和(hé)L2兩級緩存)和(hé)控制單元(解碼器(qì)坐男與分支預測等前端單元),實際用來運算的單元面積可(kě)能僅占整個什場(gè)核心的一半甚至不到。
GPU的設計理念就不同,圖形計算本身就是一項簡單而暴力的“粗活務師”,複雜度遠(yuǎn)不如(rú)CPU要負責的各種不同類型的工作,想要提高圖形計風話算速度最簡單的辦法就是擴大處理器(qì)中(zhō黃信ng)含有的單元數量。所以GPU對于特定的計算任務,因為擁有更大的計算單元,就很容易少也達到比CPU更高的計算速度,表現出來就是GPU在浮點運算吞吐量上遠(yuǎn)超CPU。
GPU是基于數據的并行計算
GPU的關(guān)鍵性能在于可(kě)以同時運算一些更簡單靜近的問(wèn)題,然後并行處理,适用于高性能計算領域所涉及的又樹諸如(rú)氣象、宇宙模型和(hé)DNA序列等問(wèn)題,以及數據庫查詢、密會如碼學領域的暴力搜索、機器(qì)學習/深度學習、地理可(kě)視化等企業(yè)應用。
GPU 并行編程的核心在于線程,一個(gè)線程就是程序中(zhōng上銀)的一個(gè)單一指令流,無數個(gè)拍來線程組合在一起就構成了并行計算網格,成為并行程序,下(xià)圖展示了多開是核 CPU 與 GPU 的計算網格:
圖7:多核 CPU 與 GPU 的計算網格對比
并行計算有兩種類型:一是基于任務的并行處理工來,這種模式将計算任務拆分成若幹個(gè)小的但不同的任務,如(rú)有的照樹運算單元負責取數,有的運算單元負責計算,等等,這樣計喝一個(gè)大的任務可(kě)以組成一道流明紙水線。二是基于數據的并行處理,這種并行模式麗下将數據分解為多個(gè)部分,讓多個(g歌草è)運算單元分别去計算這些小塊的數據,最後再将其彙總起來。
一般來說,CPU的多線程編程偏向于第一種并行模式,GPU并行編程子討模式則偏向于第二種,其對于數據的計算能力更加強大。
人工智能的研究者選擇了GPU
最初,并不是GPU選擇了人工智能,而是人工智能的研究者選擇了GPU,進而成就了GPU:2012年Alex Krizhevsky(前谷歌計算機科學家)利用深度學習+GPU的方案,一舉赢得Image Net LSVRC-2010 圖像識别大賽,并奇迹般地将識别成功率從74%提升到85%。
NVIDIA敏銳地洞察到了這一趨勢,于是耗費巨大的人力物力優化基于自家GPU的CUDA深度學習生态系統,在三年時間裡将GPU性能提升了65倍,并提供基于其GPU的從後端模型訓練到前端推理應用的全套深度學習解決方案,使得一般的開發人都水員都可(kě)以非常容易地使用GPU進行深度學習開發或高性能運算,從而奠定了其目前的王者之紙這位。
可(kě)以說,是人工智能和(hé)GPU互相成就了對方:人工智能算法促進GPU的發展,而GPU也讓算法更加簡單。
綜上所述,GPU是AI時代的算力核心,但AI算力的構成不僅僅隻是GPU加速芯片,還需要構建包括網絡互聯、操作系統、深度學習框架及相為城應 SDK、算法與應用程序等,形成一個(gè)完整的計算都下生态系統。
(轉載自沐曦集成電路(lù))