本文來自微信公眾號“奔跑的路燈”。
CPU
CPU應(yīng)該是大家最常見的。主要包括運算器(ALU,Arithmetic and Logic Unit)和控制單元(CU,Control Unit),除此之外還包括若干寄存器、高速緩存器和它們之間通訊的數(shù)據(jù)、控制及狀態(tài)的總線。CPU遵循的是馮諾依曼架構(gòu),即存儲程序、順序執(zhí)行。
一條指令在CPU中執(zhí)行的過程是:讀取到指令后,通過指令總線送到控制器中進行譯碼,并發(fā)出相應(yīng)的操作控制信號。然后運算器按照操作指令對數(shù)據(jù)進行計算,并通過數(shù)據(jù)總線將得到的數(shù)據(jù)存入數(shù)據(jù)緩存器。因此,CPU需要大量的空間去放置存儲單元和控制邏輯,相比之下計算能力只占據(jù)了很小的一部分,在大規(guī)模并行計算能力上極受限制,而更擅長于邏輯控制。
GPU
為了解決CPU在大規(guī)模并行運算中遇到的困難,GPU應(yīng)運而生,采用數(shù)量眾多的計算單元和超長的流水線,如名字一樣,圖形處理器,GPU善于處理圖像領(lǐng)域的運算加速。但GPU無法單獨工作,必須由CPU進行控制調(diào)用才能工作。CPU可單獨作用,處理復(fù)雜的邏輯運算和不同的數(shù)據(jù)類型,但當(dāng)需要大量的處理類型統(tǒng)一的數(shù)據(jù)時,則可調(diào)用GPU進行并行計算。
近年來,人工智能的興起主要依賴于大數(shù)據(jù)的發(fā)展、理論算法的完善和硬件計算能力的提升。其中硬件的發(fā)展則歸功于GPU的出現(xiàn)。
TPU
人工智能旨在為機器賦予人的智能,機器學(xué)習(xí)是實現(xiàn)人工智能的強有力方法。所謂機器學(xué)習(xí),即研究如何讓計算機自動學(xué)習(xí)的學(xué)科。TPU就是這樣一款專用于機器學(xué)習(xí)的芯片,它是Google于2016年5月提出的一個針對Tensorflow平臺的可編程AI加速器,其內(nèi)部的指令集在Tensorflow程序變化或者更新算法時也可以運行。
TPU可以提供高吞吐量的低精度計算,用于模型的前向運算而不是模型訓(xùn)練,且能效(TOPS/w)更高。在Google內(nèi)部,CPU,GPU,TPU均獲得了一定的應(yīng)用,相比GPU,TPU更加類似于DSP,盡管計算能力略有遜色,其功耗大大降低。然而,TPU,GPU的應(yīng)用都要受到CPU的控制。