-
1 # 問答知識
-
2 # 科技行者
NPU,全稱是Neural network Processing Unit,即神經網路處理器。
與它相近的還有好幾個XPU,包括:
• CPU全稱:Central Processing Unit, 即中央處理器;
• GPU全稱:Graphics Processing Unit, 即影象處理器;
• TPU全稱:Tensor Processing Unit, 即張量處理器;
• DPU全稱:Deep learning Processing Unit, 即深度學習處理器;
• BPU全稱:Brain Processing Unit, 即大腦處理器。
AI晶片火熱,到底NPU是什麼?
它是神經網路處理器,在電路層模擬人類神經元和突觸,並且用深度學習指令集直接處理大規模的神經元和突觸,一條指令完成一組神經元的處理。相比於CPU中採取的儲存與計算相分離的馮諾伊曼結構,NPU透過突觸權重實現儲存和計算一體化,從而大大提高了執行效率。
NPU的典型代表有國內的寒武紀晶片和IBM的TrueNorth,中星微電子的“星光智慧一號”雖說對外號稱是NPU,但其實只是DSP,僅支援網路正向運算,無法支援神經網路訓練。而且從儲存結構上看,該款晶片是基於傳統的片上儲存,而非神經網路晶片的行動式儲存。
前段時間,華為推出麒麟970,號稱全球第一枚整合NPU神經網路單元的移動晶片。簡而言之,麒麟970有了NPU單元之後,至少在拍照和影象處理上,比之前單純依賴CPU和GPU要快得多。而對於競爭對手,麒麟970最直接的就是保持高效率,並且更加的省電。
就目前AI晶片之爭來看,由於傳統CPU、GPU和DSP本質上並非以硬體神經元和突觸為基本處理單元,相對於NPU在深度學習方面天生會有一定劣勢,在晶片整合度和製造工藝水平相當的情況下,其表現必然遜色於NPU。
打個比方,就像無論是再好的轎車(CPU/GPU)要去拉貨,也不可能和真正大馬力、高負載的貨車(NPU)相比。
回覆列表
APU將通用運算x86架構CPU核心和可程式設計向量處理引擎相融合,把CPU擅長的精密標量運算與傳統上只有GPU才具備的大規模並行向量運算結合起來。AMD APU設計綜合了CPU和GPU的優勢,為軟體開發者帶來前所未有的靈活性,能夠任意採用最適合的方式開發新的應用。AMD APU透過一個高效能匯流排,在單個矽片上把一個可程式設計x86 CPU和一個GPU的向量處理架構連為一體,雙方都能直接讀取高速記憶體。AMD APU中還包含其他一些系統成分,比如記憶體控制器、I/O控制器、專用影片解碼器、顯示輸出和匯流排介面等。AMD APU的魅力在於它們內含由標量和向量硬體構成的全部處理能力。 所謂APU其實就是“加速處理器”(Accelerated Processing Unit)的英文縮寫,是AMD推出的整合了x86/x64 CPU處理核心和GPU處理核心的新型“融聚”(Fusion)處理器,因此我們也能在網上找到“融聚加速處理器”的說法。AMD的APU平臺分兩種,一種是此前已經能在市面上買到的E系列入門級APU,一種是2011年才在歐美市場正式上市的A系列主流級APU,A系列APU分A4/A6/A8/A10四大系列,就是我們一般講的“Llano APU處理器”(拉諾APU處理器)。
NPU:為深度學習而生的專業晶片 從技術角度看,深度學習實際上是一類多層大規模人工神經網路。它模仿生物神經網路而構建,由若干人工神經元結點互聯而成。神經元之間透過突觸兩兩連線,突觸記錄了神經元間聯絡的權值強弱。 每個神經元可抽象為一個激勵函式,該函式的輸入由與其相連的神經元的輸出以及連線神經元的突觸共同決定。為了表達特定的知識,使用者通常需要(透過某些特定的演算法)調整人工神經網路中突觸的取值、網路的拓撲結構等。該過程稱為“學習”。在學習之後,人工神經網路可透過習得的知識來解決特定的問題。 由於深度學習的基本操作是神經元和突觸的處理,而傳統的處理器指令集(包括x86和ARM等)是為了進行通用計算發展起來的,其基本操作為算術操作(加減乘除)和邏輯操作(與或非),往往需要數百甚至上千條指令才能完成一個神經元的處理,深度學習的處理效率不高。因此谷歌甚至需要使用上萬個x86 CPU核執行7天來訓練一個識別貓臉的深度學習神經網路。因此,傳統的處理器(包括x86和ARM晶片等)用於深度學習的處理效率不高,這時就必須另闢蹊徑——突破經典的馮·諾伊曼結構。