當前位置:
首頁 > 最新 > 淺談CPU,GPU,TPU,DPU,NPU,BPU

淺談CPU,GPU,TPU,DPU,NPU,BPU

隨著人工智慧、深度學習的春風吹遍世界各地,各類晶元名詞GPU, TPU, DPU, NPU, BPU陸續出現在人們的視野,這些都是什麼鬼?!它們與已有的CPU又是什麼關係呢?對於計算機小白來說,如何抓住時代的脈搏,在同齡人面前指點江山,激揚文字呢?今天小編就給你提供一個全方位科普攻略。

首先介紹下這些詞的英文全稱:

CPU全稱:Central Processing Unit, 即中央處理器;

GPU全稱:Graphics Processing Unit, 即圖像處理器;

TPU全稱:Tensor Processing Unit, 即張量處理器;

DPU全稱:Deep learning Processing Unit, 即深度學習處理器;

NPU全稱:Neural network Processing Unit, 即神經網路處理器;

BPU全稱:Brain Processing Unit, 即大腦處理器。

下面小編將依次為大家介紹各類名詞。

CPU

CPU應該是大家最常見的。主要包括運算器(ALU, Arithmetic and Logic Unit)和控制單元(CU, Control Unit),除此之外還包括若干寄存器、高速緩存器和它們之間通訊的數據、控制及狀態的匯流排。CPU遵循的是馮諾依曼架構,即存儲程序、順序執行。一條指令在CPU中執行的過程是:讀取到指令後,通過指令匯流排送到控制器中進行解碼,並發出相應的操作控制信號。然後運算器按照操作指令對數據進行計算,並通過數據匯流排將得到的數據存入數據緩存器。因此,CPU需要大量的空間去放置存儲單元和控制邏輯,相比之下計算能力只佔據了很小的一部分,在大規模並行計算能力上極受限制,而更擅長於邏輯控制。

CPU結構簡化圖

GPU

為了解決CPU在大規模並行運算中遇到的困難, GPU應運而生,採用數量眾多的計算單元和超長的流水線,如名字一樣,圖形處理器,GPU善於處理圖像領域的運算加速。但GPU無法單獨工作,必須由CPU進行控制調用才能工作。CPU可單獨作用,處理複雜的邏輯運算和不同的數據類型,但當需要大量的處理類型統一的數據時,則可調用GPU進行並行計算。近年來,人工智慧的興起主要依賴於大數據的發展、理論演算法的完善和硬體計算能力的提升。其中硬體的發展則歸功於GPU的出現。

CPU、GPU微架構對比圖

TPU

人工智慧旨在為機器賦予人的智能,機器學習是實現人工智慧的強有力方法。所謂機器學習,即研究如何讓計算機自動學習的學科。TPU就是這樣一款專用於機器學習的晶元,它是Google於2016年5月提出的一個針對Tensorflow平台的可編程AI加速器,其內部的指令集在Tensorflow程序變化或者更新演算法時也可以運行。TPU可以提供高吞吐量的低精度計算,用於模型的前向運算而不是模型訓練,且能效(TOPS/w)更高。在Google內部,CPU,GPU,TPU均獲得了一定的應用,相比GPU,TPU更加類似於DSP,儘管計算能力略有遜色,其功耗大大降低。然而,TPU,GPU的應用都要受到CPU的控制。

Google TPU 產品圖

DPU

DPU深度學習處理器最早由國內深鑒科技提出,基於Xilinx可重構特性的FPGA晶元,設計專用的深度學習處理單元(可基於已有的邏輯單元,設計並行高效的乘法器及邏輯電路,屬於IP範疇),且抽象出定製化的指令集和編譯器(而非使用OpenCL),從而實現快速的開發與產品迭代。事實上,深鑒提出的DPU屬於半定製化的FPGA。

深鑒「雨燕」DPU平台

NPU

NPU,神經網路處理器,在電路層模擬人類神經元和突觸,並且用深度學習指令集直接處理大規模的神經元和突觸,一條指令完成一組神經元的處理。相比於CPU中採取的存儲與計算相分離的馮諾伊曼結構,NPU通過突觸權重實現存儲和計算一體化,從而大大提高了運行效率。NPU的典型代表有國內的寒武紀晶元和IBM的TrueNorth,中星微電子的「星光智能一號」雖說對外號稱是NPU,但其實只是DSP,僅支持網路正向運算,無法支持神經網路訓練。而且從存儲結構上看,該款晶元是基於傳統的片上存儲,而非神經網路晶元的攜帶型存儲。

中星微電子NPU

BPU

BPU, 大腦處理器,是由地平線科技提出的嵌入式人工智慧處理器架構。第一代是高斯架構,第二代是伯努利架構,第三代是貝葉斯架構。目前地平線已經設計出了第一代高斯架構,並與英特爾在2017年CES展會上聯合推出了ADAS系統。傳統CPU晶元是做所有事情,所以一般採用串列結構。BPU主要是用來支撐深度神經網路,比如圖像、語音、文字、控制等方面的任務,而不是去做所有的事情。此外,深度神經網路的計算結構比較特殊,比如高度的並行化、時間域上的遞歸、中間節點的稀疏等,用BPU來實現會比在CPU上用軟體實現要高效,一般來說會提高2-3個數量級。然而,BPU一旦生產,不可再編程,且必須在CPU控制下使用。

地平線科技BPU

來源:習悅智能


點擊展開全文

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Research 的精彩文章:

全面屏手機面板、模組、材料、設備、零組件產業鏈分析

TAG:Research |