在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

CPU與GPU的區別

電子工程技術 ? 來源:電子工程技術 ? 2020-09-04 15:03 ? 次閱讀

01

先了解什么是異構并行計算

同構計算是使用相同類型指令集和體系架構的計算單元組成系統的計算方式。 而異構計算主要是指使用不同類型指令集和體系架構的計算單元組成系統的計算方式,常見的計算單元類別包括CPUGPUDSPASICFPGA等。 異構計算用簡單的公式可以表示為“CPU+XXX”。舉例來說,AMD著力發展的APU就屬于異構計算,用公式表示就是CPU+GPU。 由于術業有專攻,CPU、GPU、DSP、ASIC、FPGA各有所長,在一些場景下,引入特定計算單元,讓計算系統變成混合結構,就能讓CPU、GPU、DSP、FPGA執行自己最擅長的任務。 異構計算(Heterogeneous Computing)在80年代中期就已產生,其定義更加寬泛。異構計算主要是指使用不同類型指令集和體系架構的計算單元組成系統的計算方式。常見的計算單元類別包括CPU、GPU等協處理器、DSP、ASIC、FPGA等。一個異構計算平臺往往包含使用不同指令集架構(ISA)的處理器。 從軟件的角度來講,異構并行計算框架是讓軟件開發者高效地開發異構并行的程序,充分使用計算平臺資源。從硬件角度來講,一方面,多種不同類型的計算單元通過更多時鐘頻率和內核數量提高計算能力,另一方面,各種計算單元通過技術優化(如GPU從底層架構支持通用計算,通過分支預測、原子運算、動態并行、統一尋址、NIC直接訪問顯存等能力)提高執行效率。

正是因為異構計算在理論上有著諸多的優勢,一些媒體將“CPU+XXX”稱為下一代處理器。 異構計算在理論上相對于同構計算擁有很多優勢——HSA能夠簡化芯片結構設計、降低應用編程門檻、縮短項目研發周期、顯著提升芯片性能、廣泛共享軟件生態。 有廠家甚至宣傳異構計算可以實現任何程序都不必費心考慮不同處理器內核之間的存儲差異。但在現階段,異構計算除了在超算上取得了明顯成績,在其他領域優勢并不大。 即便異構計算目前還存在這樣或那樣的一些問題,但卻是非常具有發展潛力的技術。 隨著技術的進步,電子消費品市場對于高性能并行計算的需求正在爆發性增長,特別是在機器視覺人工智能云計算、AR/VR、軟件定義無線電以及其他新興領域,都對異構計算系統有著非常大的需求。 而HSA在系統編程方式上的邁進使得一個復雜片上系統能夠協調在并行計算上比CPU更高效、更低功耗的GPU、DSP以及硬件加速器等計算單元承擔大部分繁重的計算工作任務,在上述新興領域能發揮較理想的作用。 也正是因此,Parmance公司計劃與華夏芯在ML-HSA項目上進行合作——該項目面向機器學習和深層神經網絡,并針對華夏芯此前發起的開源gccbrig項目進行優化,gccbrig項目為任何支持GCC的平臺提供編譯(終結轉換)功能。 國外巨頭也一直著力發展異構計算系統——Intel在去年以167億美元收購阿爾特拉,發展CPU+FPGA,AMD著力發展的APU也屬于異構計算,像Imagination、MTK等一些廠商也在異構計算領域積極布局。可以說,異構計算的市場前景還是值得期待。 02

CPU與GPU的區別

隨著GPU的可編程性不斷增強,GPU的應用能力已經遠遠超出了圖形渲染任務,利用GPU完成通用計算的研究逐漸活躍起來,將GPU用于圖形渲染以外領域的計算成為GPGPU(General Purpose computing on graphics processing units,基于GPU的通用計算)。而與此同時CPU則遇到了一些障礙,CPU為了追求通用性,將其中大部分晶體管主要用于構建控制電路(比如分支預測等)和Cache,只有少部分的晶體管來完成實際的運算工作。

CPU + GPU 是一個強大的組合,因為 CPU 包含幾個專為串行處理而優化的核心,而 GPU 則由數以千計更小、更節能的核心組成,這些核心專為提供強勁的并行性能而設計。程序的串行部分在 CPU 上運行,而并行部分則在 GPU上運行。GPU 已經發展到成熟階段,可輕松執行現實生活中的各種應用程序,而且程序運行速度已遠遠超過使用多核系統時的情形。未來計算架構將是并行核心 GPU 與多核 CPU 共同運行的混合型系統。

1、CPU即中央處理器

CPU( Central Processing Unit, 中央處理器)就是機器的“大腦”,也是布局謀略、發號施令、控制行動的“總司令官”。

CPU的結構主要包括運算器(ALU, Arithmetic and Logic Unit)、控制單元(CU, Control Unit)、寄存器(Register)、高速緩存器(Cache)和它們之間通訊的數據、控制及狀態的總線。

簡單來說就是:計算單元、控制單元和存儲單元,架構如下圖所示:

圖:CPU微架構示意圖

從字面上我們也很好理解,計算單元主要執行算術運算、移位等操作以及地址運算和轉換;存儲單元主要用于保存運算中產生的數據以及指令等;控制單元則對指令譯碼,并且發出為完成每條指令所要執行的各個操作的控制信號

所以一條指令在CPU中執行的過程是這樣的:讀取到指令后,通過指令總線送到控制器(黃色區域)中進行譯碼,并發出相應的操作控制信號;然后運算器(綠色區域)按照操作指令對數據進行計算,并通過數據總線將得到的數據存入數據緩存器(大塊橙色區域)。過程如下圖所示:

圖:CPU執行指令圖 CPU遵循的是馮諾依曼架構,其核心就是:存儲程序,順序執行。在這個結構圖中,負責計算的綠色區域占的面積似乎太小了,而橙色區域的緩存Cache和黃色區域的控制單元占據了大量空間。

因為CPU的架構中需要大量的空間去放置存儲單元(橙色部分)和控制單元(黃色部分),相比之下計算單元(綠色部分)只占據了很小的一部分,所以它在大規模并行計算能力上極受限制,而更擅長于邏輯控制。

另外,因為遵循馮諾依曼架構(存儲程序,順序執行),CPU就像是個一板一眼的管家,人們吩咐的事情它總是一步一步來做。但是隨著人們對更大規模與更快處理速度的需求的增加,這位管家漸漸變得有些力不從心。

于是,能不能把多個處理器放在同一塊芯片上,讓它們一起來做事,這樣效率不就提高了嗎?GPU便由此誕生了。

2、GPU即圖形處理器。

GPU全稱為Graphics Processing Unit,中文為圖形處理器,就如它的名字一樣,GPU最初是用在個人電腦、工作站、游戲機和一些移動設備(如平板電腦、智能手機等)上運行繪圖運算工作的微處理器

為什么GPU特別擅長處理圖像數據呢?這是因為圖像上的每一個像素點都有被處理的需要,而且每個像素點處理的過程和方式都十分相似,也就成了GPU的天然溫床。

GPU簡單架構如下圖所示:

圖:GPU微架構示意圖 從架構圖我們就能很明顯的看出,GPU的構成相對簡單,有數量眾多的計算單元和超長的流水線,特別適合處理大量的類型統一的數據。 但GPU無法單獨工作,必須由CPU進行控制調用才能工作。CPU可單獨作用,處理復雜的邏輯運算和不同的數據類型,但當需要大量的處理類型統一的數據時,則可調用GPU進行并行計算。

注:GPU中有很多的運算器ALU和很少的緩存cache,緩存的目的不是保存后面需要訪問的數據的,這點和CPU不同,而是為線程thread提高服務的。如果有很多線程需要訪問同一個相同的數據,緩存會合并這些訪問,然后再去訪問dram

再把CPU和GPU兩者放在一張圖上看下對比,就非常一目了然了。

GPU的工作大部分都計算量大,但沒什么技術含量,而且要重復很多很多次。

借用知乎上某大神的說法,就像你有個工作需要計算幾億次一百以內加減乘除一樣,最好的辦法就是雇上幾十個小學生一起算,一人算一部分,反正這些計算也沒什么技術含量,純粹體力活而已;而CPU就像老教授,積分微分都會算,就是工資高,一個老教授頂二十個小學生,你要是富士康你雇哪個?

GPU就是用很多簡單的計算單元去完成大量的計算任務,純粹的人海戰術。這種策略基于一個前提,就是小學生A和小學生B的工作沒有什么依賴性,是互相獨立的。
有一點需要強調,雖然GPU是為了圖像處理而生的,但是我們通過前面的介紹可以發現,它在結構上并沒有專門為圖像服務的部件,只是對CPU的結構進行了優化與調整,所以現在GPU不僅可以在圖像處理領域大顯身手,它還被用來科學計算、密碼破解、數值分析,海量數據處理(排序,Map-Reduce等),金融分析等需要大規模并行計算的領域。

所以GPU也可以認為是一種較通用的芯片。 從根本上說CPU和GPU它們的目的不同,且有不同側重點,也有著不同的性能特性,在某些工作中CPU執行得更快,另一工作中或許GPU能更好。當你需要對大量數據做同樣的事情時,GPU更合適,當你需要對同一數據做很多事情時,CPU正好。

然而在實際應用中,后一種情形更多,也就是CPU更為靈活能勝任更多的任務。GPU能做什么?關于圖形方面的以及大型矩陣運算,如機器學習算法、挖礦、暴力破解密碼等,GPU會大幅提高計算效率。

Cache, local memory:CPU > GPU

Threads(線程數): GPU > CPU

Registers: GPU > CPU 多寄存器可以支持非常多的Thread,thread需要用到register,thread數目大,register也必須得跟著很大才行。

SIMD Unit(單指令多數據流,以同步方式,在同一時間內執行同一條指令): GPU > CPU。

簡單地說,CPU擅長分支預測等復雜操作,GPU擅長對大量數據進行簡單操作。一個是復雜的勞動,一個是大量并行的工作。

其實GPU可以看作是一種專用的CPU,專為單指令在大塊數據上工作而設計,這些數據都是進行相同的操作,要知道處理一大塊數據比處理一個一個數據更有效,執行指令開銷也會大大降低,因為要處理大塊數據,意味著需要更多的晶體管來并行工作,現在旗艦級顯卡都是百億以上的晶體管。

CPU呢,它的目的是盡可能快地在單個數據上執行單個指令。由于它只需要使用單個數據單條指令,因此所需的晶體管數量要少得多,目前主流桌面CPU晶體管都是十億以下,和頂級GPU相差十倍以上,但它需要更大的指令集,更復雜的ALU(算術邏輯單元),更好的分支預測,更好的虛擬化架構、更低的延遲等等。

另外,像我們的操作系統Windows,它是為x86處理器編寫的,它需要做的任務執行的進程,在CPU上肯定更為高效,你想每個線程的任務并不相同,基本上難以并行化,完全發揮不了GPU的長處。

總而言之,CPU和GPU因為最初用來處理的任務就不同,所以設計上有不小的區別。CPU的運算速度取決于請了多么厲害的教授。教授處理復雜任務的能力是碾壓小學生的,但是對于沒那么復雜的任務,還是頂不住人多。當然現在的GPU也能做一些稍微復雜的工作了,相當于升級成初中生高中生的水平。但還需要CPU來把數據喂到嘴邊才能開始干活,最終還是靠CPU來管的。

03

CPU+GPU并行計算的好處

一 、CPU多核轉到GPU并行化(適合算術密集型)

雖然GPU并不適用于所有問題的求解,但是我們發現那些對運算力量耗費巨大的科學命題都具備天然的特色。這類程序在運行時擁有極高的運算密度、并發線程數量和頻繁地存儲器訪問,無論是在音頻處理、視覺仿真還是到分子動力學模擬和金融風險評估領域都有大量涉及。這種問題如果能夠順利遷移到GPU為主的運算環境中,將為我們帶來更高效的解決方案。

傳統意義上的GPU不善于運行分支代碼,但是ATI和NVIDIA經過長期改進其內部架構已經使得GPU可以較為高效地運行分支、循環等復雜代碼。同時因為GPU屬于并行機范疇,相同的運算可以應用到每個數據元素的時候,它們可以達到最好的性能。在CPU編程環境中,寫出每個輸入數據元素有不同數量的輸入的程序很容易,但在GPU這種并行機上還是有不少麻煩。

通用的數據結構正是GPU編程的最大困難之一。CPU程序員經常使用的數據結構如列表和樹在GPU身上并不容易實現。GPU目前還不允許任意存儲器訪問,而且GPU運算單元的設計為主要操作是在表現位置和顏色的四維向量上。

不過這些并不能阻擋GPU編程的加速發展,因為GPU不是真的為通用計算而設計的,需要一些努力才能讓GPU高速地服務通用計算程序。這些努力前些年是程序員而單獨實現的,而隨著ATI和NVIDIA開始看到高性能計算市場的硬件需求,我們看到無論是Fermi架構添加全能二級緩存和統一定址還是RV870架構不斷優化LDS并放大并發線程數,這些都是GPU自身硬件體系為了適應未來的運算環境而做出的變革。

二、并行化編程優點

在GPU并行編程過程中,OpenCL是一個不錯的選擇。OpenCL是Open Computing Language(開放式計算語言)的簡稱,它是第一個為異構系統的通用并行編程而產生的統一的、免費的標準。OpenCL支持由多核的CPU、GPU、Cell類型架構以及信號處理器(DSP)等其他的并行設備組成的異構系統。

OpenCL的出現,使得軟件開發人員編寫高性能服務器、桌面計算系統以及手持設備的代碼變得更加快捷。OpenCL由用于編寫內核程序的語言和定義并控制平臺的API組成,提供了基于任務和基于數據的兩種并行計算機制,使得GPU的計算不在僅僅局限于圖形領域,而能夠進行更多的并行計算。但是,如果通過傳統的方法開發一個能夠運行在異構平臺(在CPU和GPU的平臺)的程序是很難的。不同的廠商,不同的產品型號的GPU一般有著不一樣的架構,這樣要想開發出一款能夠高效的能夠運用不同平臺的所有計算資源的軟件是很難的。OpenCL的出現有效地解決了異構平臺的問題。

OpenCL規范是由Khronos Group推出的,OpenCL程序不僅僅可以運行在多核的CPU上,也可以在GPU上進行執行,這充分體現了OpenCL的跨平臺性和可移植性,也讓編程人員可以充分利用GPU的強大的并行計算能力,相對于CPU來說,GPU存在很多特點。

GPU擁有的核心的數量要比高端CPU的核心數量多很多。雖然GPU的每個運算核心沒有CPU的每個運算核心工作頻率高,但是GPU的總體性能-芯片面積比以及性能-功耗比比CPU高很多,所以在處理越多線程的并行計算的任務性能高很多。

GPU能夠通過大量并行線程之間的交織運行隱藏全局的延遲,除此之外GPU還擁有大量的寄存器、局部存儲器和cache等用來提升外部存儲的訪問性能。

在傳統的CPU運算中,線程之間的切換是需要很大的開銷的,所以在開啟了大量線程的算法的效率是很低的。但是,在GPU中,線程之間的切換是很廉價的。

GPU的計算能力比CPU強很多。

三、OpenCL環境下并行化編程

OpenCL是一個開放的工業標準,它可以為CPU和GPU等不同的設備組成的異構平臺進行編程。OpenCL是一種語言,也是一個為并行編程而提供的框架,編程人員可以利用OpenCL編寫出一個能夠在GPU上執行的通用程序。

OpenCL的技術核心包好了下面的四種模型: 平臺模型(Platform Model):OpenCL平臺模型定義了主機和設備的角色,為程序員寫在設備上執行的OpenCL C函數(內核)提供了一個抽象的硬件模型。平臺模型確定了主機上的處理器能夠協調執行,而且存在一個或者多個處理器能夠執行OpenCL C代碼(設備)。

執行模型(Execution Model):定義如何在主機上配置OpenCL環境以及內核(kernel)是如何在設備上執行的。這其中包括在主機上設置OpenCL上下文,提供主機和設備交互的機制,定義了內核在設備上執行的兵法模式。

內存模型(Memory Model):定義了內核使用的抽象的內存層次。

編程模型(Programming Model):定義了并發模型如何讓映射到物理硬件。

OpenCL框架被分成平臺層API和運行時API,平臺層API允許應用查詢平臺和設備,而且可以通過上下文來管理它們。運行時的API利用上下文去管理設備上的內核的執行。

四、OpenCL并行化調試工具

在利用OpenCL進行編程之后,我們可以使用gDEBugger進行調試,gDEBugger是一個高級的OpenCL和OpenGL調試器,分析器和內存分析器。它可以完成其他工具無法完成的工作:追蹤在OpenCL和OpenGL之上的應用程序的活動,并發現系統實現的內部發生了什么。

程序員可以在以下的情況下使用gDEBugger: 優化OpenCL和OpenGL應用程序性能。 快速找到與OpenCL和OpenGL相關的bug。 改善程序性能和魯棒性

五、CPU和GPU共享記憶體空間

在過去的時間,雖然GPU和CPU已整合到同一個晶片上(GPGPU技術),但是晶片在運算時要定位記憶體的位置仍然得經過繁雜的步驟,這是因為CPU和GPU的記憶體池仍然是獨立運作。之前為了解決兩者記憶體池獨立的運算問題,當CPU程式需要在GPU上進行部分運算時,CPU都必須從CPU的記憶體上復制所有的資料到GPU的記憶體上,而當GPU上的運算完成時,這些資料還得再復制回到CPU記憶體上。

這些步驟都會不斷耗費時間以及程式處理的效能。2012年,AMD就攜手ARM高通三星聯發科等廠商成立HSA(Heterogeneous Systems Architecture)基金會,希望拓展CPU和GPU協同運算的新架構。

日前,AMD進一步公開說明此運算架構的新技術:hUMA(heterogeneous Uniform Memory Access)。透過hUMA,CPU和GPU能共享同一個記憶體空間,并且CPU能夠直接存取GPU的記憶體位址,不必像過去得花工夫再將GPU的運算資料復寫到CPU上。近日,在HotChips會議上,AMD連續公布了桌面FX處理器使用的Steamroller架構、面向低功耗平臺的Jaguar架構等,但是這都不是AMD的終極目標,他們聲稱處理器速度的競爭已經結束,未來屬于HSA。

六、未來發展趨勢

在計算機發展歷程中,為了解決各種特定的問題,不斷有互不兼容的計算模塊被加入系統,卻很少從全局優化的角度加以考察。計算機整體效率不高的現狀正是這種設計模式的直接后果。常見情況是軟件的計算負載被調度在一個并不適合當前任務的計算設備上低效執行。HSA則展現了一種全新的體系架構,可以適應各種特性的計算任務。

HSA版本可以在CPU和GPU之間無縫地共享數據,而無需內存拷貝和緩存刷新,因為任務以極低的開銷被調度到合適的處理器上。最終的結果是HSA版本的性能高出2.3倍,而功耗降低2.4倍。相較而言,無論是多核CPU、GPU、甚至非HSA方式的混合CPU和GPU都無法達到這樣的性能水平。同樣重要的是,無需轉換到迥異的編程模型,僅僅通過C++的簡單擴展就可以實現程序。 04

xPU都是些什么鬼

▍APU

Accelerated Processing Unit。目前還沒有 AI 公司將自己的處理器命名為 APU,因為 AMD 早就用過 APU 這個名字了。APU 是 AMD 的一個處理器品牌。AMD 在一顆芯片上集成傳統 CPU 和圖形處理器 GPU,任務可以靈活地在 CPU 和 GPU 間分配。AMD 將這種異構結構稱為加速處理單元,即 APU。

Audio Processing Unit。聲音處理器,顧名思義,處理聲音數據的專用處理器。不多說,生產 APU 的芯片商有好多家。聲卡里都有。

▍BPU

Brain Processing Unit。地平線機器人(Horizon Robotics)以 BPU 來命名自家的 AI 芯片。相比于國內外其他 AI 芯片 start-up 公司,地平線的第一代 BPU 走的相對保守的 TSMC 的 40nm 工藝。BPU 已經被地平線申請了注冊商標,其他公司就別打 BPU 的主意了。

▍CPU

上文也進行了詳細的介紹。也不會有 AI 公司將自己的處理器命名為 CPU 的。不過,CPU 與 AI 處理器并不沖突。

▍DPU

Deep-Learning Processing Unit。深度學習處理器。創立于 2010 年的 wave computing 公司將其開發的深度學習加速處理器稱為 Dataflow Processing Unit(DPU),應用于數據中心

▍EPU

Emotion Processing Unit伴隨機情緒機器人而生,可以讓機器人具有情緒。從官方渠道消息看,EPU 本身并不復雜,也不需要做任務量巨大的神經網絡計算,是基于 MCU 的芯片。

▍FPU

Floating Point Unit。浮點單元,不多做解釋了。現在高性能的 CPU、DSP、GPU 內都集成了 FPU 做浮點運算。

▍GPU

Graphics Processing Unit。圖形處理器。GPU 原來最大的需求來自 PC 市場上各類游戲對圖形處理的需求。但是隨著移動設備的升級,在移動端也逐漸發展起來。

▍HPU

Holographic Processing Unit。全息處理器。Microsoft 專為自家 Hololens 應用開發的。

▍IPU

Intelligence Processing Unit。智能處理器。以 IPU 命名芯片的有兩家公司——Graphcore和Mythic。

Image Cognition Processor。圖像認知處理器 ICP,加拿大公司 CogniVue 開發的用于視覺處理和圖像認知的 IP。

Image Processing Unit。圖像處理器。一些 SOC 芯片中將處理靜態圖像的模塊稱為 IPU。但是,IPU 不是一個常用的縮寫,更常見的處理圖像信號的處理器的縮寫為下面的 ISP。

Image Signal Processor。圖像信號處理器。這個話題也不是一個小話題。ISP 的功能,簡單的來說就是處理 camera 等攝像設備的輸出信號,實現降噪、Demosaicing、HDR、色彩管理等功能。

▍KPU

Knowledge Processing Unit。嘉楠耘智(canaan)號稱 2017 年將發布自己的 AI 芯片 KPU。嘉楠耘智要在 KPU 單一芯片中集成人工神經網絡和高性能處理器,主要提供異構、實時、離線的人工智能應用服務。這又是一家向 AI 領域擴張的不差錢的礦機公司。作為一家做礦機芯片(自稱是區塊鏈專用芯片)和礦機的公司,嘉楠耘智累計獲得近 3 億元融資,估值近 33 億人民幣。據說嘉楠耘智近期將啟動股改并推進 IPO。

另:Knowledge Processing Unit 這個詞并不是嘉楠耘智第一個提出來的,早在 10 年前就已經有論文和書籍講到這個詞匯了。只是,現在嘉楠耘智將 KPU 申請了注冊商標。

▍MPU

Micro Processing Unit。微處理器。MPU,CPU,MCU,這三個概念差不多,知道就行了。

Mind Processing Unit。意念處理器,聽起來不錯。「解讀腦電波」,「意念交流」,永恒的科幻話題。如果采集大量人類「思考」的腦電波數據,通過深度學習,再加上強大的意念處理器 MPU,不知道能否成為 mind-reader。如果道德倫理上無法接受,先了解一下家里寵物貓寵物狗的「想法」也是可以的嗎。再進一步,從 mind-reader 發展為 mind-writer,持續升級之后,是不是就可以成為冰與火中的 Skinchanger?

▍NPU

Neural-Network Processing Unit。與 GPU 類似,神經網絡處理器 NPU 已經成為了一個通用名詞,而非某家公司的專用縮寫。由于神經網絡計算的類型和計算量與傳統計算的區別,導致在進行 NN 計算的時候,傳統 CPU、DSP 甚至 GPU 都有算力、性能、能效等方面的不足,所以激發了專為 NN 計算而設計 NPU 的需求。這里羅列幾個以 NPU 名義發布過產品的公司,以及幾個學術圈的神經網絡加速器。

▍OPU

Optical-Flow Processing Unit。光流處理器。有需要用專門的芯片來實現光流算法嗎?不知道,但是,用 ASIC IP 來做加速應該是要的。

▍PPU

Physical Processing Unit。物理處理器。要先解釋一下物理運算,就知道物理處理器是做什么的了。物理計算,就是模擬一個物體在真實世界中應該符合的物理定律。具體的說,可以使虛擬世界中的物體運動符合真實世界的物理定律,可以使游戲中的物體行為更加真實,例如布料模擬、毛發模擬、碰撞偵測、流體力學模擬等。開發物理計算引擎的公司有那么幾家,使用 CPU 來完成物理計算,支持多種平臺。但是,Ageia 應該是唯一一個使用專用芯片來加速物理計算的公司。Ageia 于 2006 年發布了 PPU 芯片 PhysX,還發布了基于 PPU 的物理加速卡,同時提供 SDK 給游戲開發者。2008 年被 NVIDIA 收購后,PhysX 加速卡產品被逐漸取消,現在物理計算的加速功能由 NVIDIA 的 GPU 實現,PhysX SDK 被 NVIDIA 重新打造。

▍QPU

Quantum Processing Unit。量子處理器。量子計算機也是近幾年比較火的研究方向。作者承認在這方面所知甚少。可以關注這家成立于 1999 年的公司 D-Wave System。DWave 大概每兩年可以將其 QPU 上的量子位個數翻倍一次。

▍RPU

Resistive Processing Unit。阻抗處理單元 RPU。這是 IBM Watson Research Center 的研究人員提出的概念,真的是個處理單元,而不是處理器。RPU 可以同時實現存儲和計算。利用 RPU 陣列,IBM 研究人員可以實現 80TOPS/s/W 的性能。

Ray-tracing Processing Unit。光線追蹤處理器。Ray tracing 是計算機圖形學中的一種渲染算法,RPU 是為加速其中的數據計算而開發的加速器。現在這些計算都是 GPU 的事情了。

▍SPU

Streaming Processing Unit。流處理器。流處理器的概念比較早了,是用于處理視頻數據流的單元,一開始出現在顯卡芯片的結構里。可以說,GPU 就是一種流處理器。甚至,還曾經存在過一家名字為「Streaming Processor Inc」的公司,2004 年創立,2009 年,隨著創始人兼董事長被挖去 NVIDIA 當首席科學家,SPI 關閉。

Speech-Recognition Processing Unit。語音識別處理器,SPU 或 SRPU。這個縮寫還沒有公司拿來使用。現在的語音識別和語義理解主要是在云端實現的,比如科大訊飛。科大訊飛最近推出了一個翻譯機,可以將語音傳回云端,做實時翻譯,內部硬件沒有去專門了解。和語音識別相關的芯片如下。

Space Processing Unit。空間處理器。全景攝像,全息成像,這些還都是處理我們的生活空間。當面對廣闊的太陽系、銀河系這些宇宙空間,是不是需要新的更強大的專用處理器呢?飛向 M31 仙女座星系,對抗黑暗武士,只靠 x86 估計是不行的。

▍TPU

Tensor Processing Unit。Google 的張量處理器。2016 年 AlphaGo 打敗李世石,2017 年 AlphaGo 打敗柯潔,兩次人工智能催化事件給芯片行業帶來的沖擊無疑就是 TPU 的出現和解密。Google 在 2017 年 5 月的開發者 I/O 大會上正式公布了 TPU2,又稱 Cloud TPU。

▍UPU

Universe Processing Unit。宇宙處理器。和 Space Processing Unit 相比,你更喜歡哪個?

▍VPU

Vision Processing Unit。視覺處理器 VPU 也有希望成為通用名詞。作為現今最火熱的 AI 應用領域,計算機視覺的發展的確能給用戶帶來前所未有的體驗。為了處理計算機視覺應用中遇到的超大計算量,多家公司正在為此設計專門的 VPU。

Visual Processing Unit。

Video Processing Unit。視頻處理器。處理動態視頻而不是圖像,例如進行實時編解碼。

Vector Processing Unit。向量處理器。標量處理器、向量處理器、張量處理器,這是以處理器處理的數據類型進行的劃分。

▍WPU

Wearable Processing Unit。一家印度公司 Ineda Systems 在 2014 年大肆宣傳了一下他們針對 IOT 市場推出的 WPU 概念,獲得了高通和三星的注資。Ineda Systems 研發的這款「Dhanush WPU」分為四個級別,可適應普通級別到高端級別的可穿戴設備的運算需求,可以讓可穿戴設備的電池達到 30 天的持續續航、減少 10x 倍的能耗。但是,一切似乎在 2015 年戛然而止,沒有了任何消息。只在主頁的最下端有文字顯示,Ineda 將 WPU 申請了注冊商標。

Wisdom Processing Unit。智慧處理器。

▍ZPU

Zylin CPU。挪威公司 Zylin 的 CPU 的名字。為了在資源有限的 FPGA 上能擁有一個靈活的微處理器,Zylin 開發了 ZPU。ZPU 是一種 stack machine(堆棧結構機器),指令沒有操作數,代碼量很小,并有 GCC 工具鏈支持,被稱為「The worlds smallest 32 bit CPU with GCC toolchain」。Zylin 在 2008 年將 ZPU 在 opencores 上開源。有組織還將 Arduino 的開發環境進行了修改給 ZPU 用。

▍其他非 xPU 的 AI 芯片

寒武紀科技(Cambricon)中科院背景的寒武紀并沒有用 xPU 的方式命名自家的處理器。媒體的文章既有稱之為深度學習處理器 DPU 的,也有稱之為神經網絡處理器 NPU 的。陳氏兄弟的 DianNao 系列芯片架構連續幾年在各大頂級會議上刷了好幾篇 best paper,為其公司的成立奠定了技術基礎。寒武紀 Cambricon-X 指令集是其一大特色。目前其芯片 IP 已擴大范圍授權集成到手機、安防、可穿戴設備等終端芯片中。據流傳,2016 年就已拿到一億元訂單。在一些特殊領域,寒武紀的芯片將在國內具有絕對的占有率。最新報道顯示,寒武紀又融了 1 億美元。

IntelIntel 在智能手機芯片市場的失利,讓其痛定思痛,一改當年的猶豫,在 AI 領域的幾個應用方向上接連發了狠招。什么狠招呢,就是三個字:買,買,買。在數據中心/云計算方面,167 億美金收購的 Altera,4 億美金收購 Nervana;在移動端的無人機、安防監控等方面,收購 Movidius(未公布收購金額);在 ADAS 方面,153 億美金收購 Mobileye。Movidius 在前面 VPU 部分進行了介紹,這里補充一下 Nervana 和 Mobileye(基于視覺技術做 ADAS 方案,不是單純的視覺處理器,所以沒寫在 VPU 部分)。

Nervana Nervana成立于 2014 年,總部在 SanDiego,以提供 AI 全棧軟件平臺 Nervana Cloud 為主要業務。和硬件扯上關系的是,Nervana Cloud 除了支持 CPU、GPU 甚至 Xeon Phi 等后臺硬件外,還提供有自家定制的 Nervana Engine 硬件架構。根據 The Next Platform 的報道「Deep Learning Chip Upstart Takes GPUs to Task」,Nervana Engine 使用 TSMC 28nm 工藝,算力 55 TOPS。報道發布不到 24 小時,就被 Intel 收購了,全部 48 位員工并入 Intel。Intel 以 Nervana Engine 為核心打造了 Crest Family 系列芯片。項目代碼為「Lake Crest」的芯片是第一代 Nervana Engine,「Knights Crest」為第二代。哦,對了,Nervana 的 CEO 在創立 Nervana 之前,在高通負責一個神經形態計算的研究項目,就是上面提到的 Zeroth。

Mobileye一家基于計算機視覺做 ADAS 的以色列公司,成立于 1999 年,總部在耶路撒冷。Mobileye 為自家的 ADAS 系統開發了專用的芯片——EyeQ 系列。2015 年,Tesla 宣布正在使用 Mobileye 的芯片(EyeQ3)和方案。但是,2016 年 7 月,Tesla 和 Mobileye 宣布將終止合作。隨后,Mobile 于 2017 年被 Intel 以$153 億收入囊中,現在是 Intel 的子公司。Mobileye 的 EyeQ4 使用了 28nm SOI 工藝,其中用了 4 個 MIPS 的大 CPU core 做主控和算法調度以及一個 MIPS 的小 CPU core 做外設控制,集成了 10 個向量處理器(稱為 VMP,Vector Microcode Processor)來做數據運算(有點眼熟,回去看看 Movidius 部分)。Mobileye 的下一代 EyeQ5 將使用 7nm FinFET 工藝,集成 18 個視覺處理器,并且為了達到自動駕駛的 level 5 增加了硬件安全模塊。

比特大陸 Bitmain比特大陸設計的全定制礦機芯片性能優越,讓其大賺特賺。在賣礦機芯片之余,比特大陸自己也挖挖礦。總之,芯片設計能力非凡、土豪有錢的比特大陸對標 NVIDIA 的高端 GPU 芯片,任性地用 16nm 的工藝開啟了自家的 AI 芯片之路。芯片測試已有月余,據傳功耗 60W 左右,同步在招攬產品、市場人員。最近的推文爆出了這款 AI 芯片的名字:「智子(Sophon)」,來自著名的《三體》,可見野心不小,相信不久即將正式發布。

華為&海思市場期待華為的麒麟 970 已經很長時間了,內置 AI 加速器已成公開的秘密,據傳用了寒武紀的 IP,就等秋季發布會了。還是據傳,海思的 HI3559 用了自己研發的深度學習加速器。

蘋果蘋果正在研發一款 AI 芯片,內部稱為「蘋果神經引擎」(Apple Neural Engine)。這個消息大家并不驚訝,大家想知道的就是,這個 ANE 會在哪款 iphone 中用上。

高通高通除了維護其基于 Zeroth 的軟件平臺,在硬件上也動作不斷。收購 NXP 的同時,據傳高通也一直在和 Yann LeCun 以及 Facebook 的 AI 團隊保持合作,共同開發用于實時推理的新型芯片。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19286

    瀏覽量

    229854
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10863

    瀏覽量

    211786
  • 指令集
    +關注

    關注

    0

    文章

    224

    瀏覽量

    23384

原文標題:暈:剛分清CPU、GPU,卻發現還有...

文章出處:【微信號:EngicoolArabic,微信公眾號:電子工程技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【一文看懂】大白話解釋“GPUGPU算力”

    隨著大模型的興起,“GPU算力”這個詞正頻繁出現在人工智能、游戲、圖形設計等工作場景中,什么是GPU,它與CPU區別是什么?以及到底什么是GPU
    的頭像 發表于 10-29 08:05 ?628次閱讀
    【一文看懂】大白話解釋“<b class='flag-5'>GPU</b>與<b class='flag-5'>GPU</b>算力”

    動畫渲染用GPU還是CPU的選擇思路

    。根據使用的硬件類型,渲染可以分為CPU渲染和GPU渲染。理解這兩者之間的區別,能幫助我們選擇合適的渲染方式,從而提高工作效率和渲染質量。CPU渲染工作原理
    的頭像 發表于 09-28 08:05 ?252次閱讀
    動畫渲染用<b class='flag-5'>GPU</b>還是<b class='flag-5'>CPU</b>的選擇思路

    gpu服務器與cpu服務器的區別對比,終于知道怎么選了!

    gpu服務器與cpu服務器的區別主要體現在架構設計、性能特點、能耗效率、應用場景、市場定位等方面,在以上幾個方面均存在顯著差異。CPU服務器更適合數據庫管理和企業應用,而
    的頭像 發表于 08-01 11:41 ?495次閱讀

    算力服務器為什么選擇GPU

    服務器會選擇GPU而不是傳統的CPU呢?GPUCPU區別GPU
    的頭像 發表于 07-25 08:28 ?633次閱讀
    算力服務器為什么選擇<b class='flag-5'>GPU</b>

    CPU渲染和GPU渲染優劣分析

    使用計算機進行渲染時,有兩種流行的系統:基于中央處理單元(CPU)或基于圖形處理單元(GPU)。CPU渲染利用計算機的CPU來執行場景并將其渲染到接近完美。這也是執行渲染的更傳統方式。
    的頭像 發表于 05-23 08:27 ?598次閱讀
    <b class='flag-5'>CPU</b>渲染和<b class='flag-5'>GPU</b>渲染優劣分析

    X-Silicon發布RISC-V新架構 實現CPU/GPU一體化

    X-Silicon 的芯片與其他架構不同,其設計將 CPUGPU 的功能整合到單核架構中。這與英特爾和 AMD 的典型設計不同,前者有獨立的 CPU 內核和 GPU 內核。
    發表于 04-08 11:34 ?587次閱讀
    X-Silicon發布RISC-V新架構 實現<b class='flag-5'>CPU</b>/<b class='flag-5'>GPU</b>一體化

    RISC-V芯片新突破:CPUGPU一體化核心設計

    X-Silicon 的芯片與其他架構不同,其設計將 CPUGPU 的功能結合到單核架構中。這與 Intel 和 AMD 的典型設計不同,后者有獨立的 CPU 核心和 GPU 核心
    發表于 04-07 10:41 ?732次閱讀
    RISC-V芯片新突破:<b class='flag-5'>CPU</b>與<b class='flag-5'>GPU</b>一體化核心設計

    SoC封裝結構和CPUGPU封裝結構的區別

    SoC封裝結構、CPU封裝結構和GPU封裝結構在設計和功能上存在顯著的差異,這主要體現在它們的集成度、功能特性和應用場景上。
    的頭像 發表于 03-28 14:39 ?956次閱讀

    fpga和gpu區別

    FPGA(現場可編程門陣列)和GPU(圖形處理器)在多個方面存在顯著的區別
    的頭像 發表于 03-27 14:23 ?1214次閱讀

    一文詳解GPU硬件與CUDA開發工具

    CPUGPU 的顯著區別是:一個典型的 CPU 擁有少數幾個快速的計算核心,而一個典型的 GPU 擁有幾百到幾千個不那么快速的計算核心
    的頭像 發表于 03-21 10:15 ?1182次閱讀
    一文詳解<b class='flag-5'>GPU</b>硬件與CUDA開發工具

    gpu是什么和cpu區別

    GPUCPU是兩種常見的計算機處理器,它們在結構和功能上有很大的區別。在這篇文章中,我們將探討GPUCPU
    的頭像 發表于 02-20 11:24 ?1.9w次閱讀

    gpu服務器是干什么的 gpu服務器與cpu服務器的區別有哪些

    gpu服務器是干什么的 gpu服務器與cpu服務器的區別 GPU服務器是一種專門用于處理圖形運算的服務器,而
    的頭像 發表于 01-30 15:31 ?870次閱讀

    為什么GPUCPU更快?

    GPUCPU更快的原因并行處理能力:GPU可以同時處理多個任務和數據,而CPU通常只能一次處理一項任務。這是因為GPU的架構使得它可以同時
    的頭像 發表于 01-26 08:30 ?2414次閱讀
    為什么<b class='flag-5'>GPU</b>比<b class='flag-5'>CPU</b>更快?

    GPU是顯卡嗎 cpugpu哪個算力強

    GPU(圖形處理器)是顯卡(顯像處理器)的一種,它是一種專門用于圖形計算的處理器。顯卡是計算機中的一個重要組件,負責處理和渲染圖形,使它們能夠在顯示屏上顯示出來。GPUCPU在計算原理和結構上有
    的頭像 發表于 01-10 15:45 ?5293次閱讀

    CPUGPU散熱器設計的異同及其重要性

    CPUGPU散熱器的設計異同及其重要性 在計算機的發展過程中,中央處理單元(CPU)和圖形處理單元(GPU)在性能和熱量產生方面的不斷提升和增加,使得其在長時間工作時產生了大量的熱量
    的頭像 發表于 01-09 14:00 ?1303次閱讀
    主站蜘蛛池模板: 免费日本视频| 亚洲一区三区| 男女互插小说| 日本黄色大片网站| 最刺激黄a大片免费观看| 成人午夜小视频手机在线看 | 1v1双性受整夜不拔bl| 免费一级大片| 欧洲成人r片在线观看| 免费久久精品国产片香蕉| 欧美啪啪精品| 日本污视频在线观看| 免费污视频在线| 女人张开双腿让男人桶完整| 天天摸天天操天天爽| 91网站免费在线观看| 日韩a级毛片| 特黄日韩免费一区二区三区| 欧美日本俄罗斯一级毛片| 美女视频黄.免费网址| 久久国产精品岛国搬运工| 淫婷婷| 国产福利在线观看你懂的| 999国产精品| 天天色综合三| 欧美一卡二卡科技有限公司| 老外一级黄色片| 国产在线观看午夜不卡| 天天射日日射| 午夜视频一区二区| 都市禁忌猎艳风流美妇| 国产成人精品怡红院| xxxx日本69xxxxx| 美女色黄一男一女| 成人午夜大片免费看爽爽爽| 色噜噜狠狠成人影院| 国产一卡二卡≡卡四卡无人| 日本黄黄| 五月天停婷基地| 天天插夜夜| 亚洲成年网|