您好,登錄后才能下訂單哦!
近年來,傳統用于圖像處理的GPU逐漸被發掘用來進行高性能計算,并且達到了相當好的效果,在單精度浮點運算中的速度達到5TFLOPs,在雙精度浮點運算中的速度可以達到1TFLOPs。如今性能最好的GPU處理器(比如NVidea的Tesla K20和K40)與一些其他的多核處理器(比如Intel Xeon Phi處理器以及IBM和Inter的一些處理器)相比表現出了非常好的計算性能。
FPGA傳統上是應用于單精度的定點運算,不過現在也可以浮點數進行高性能的計算,單精度浮點數的運算峰值已經超過1TFLOPs。但是運算的峰值并不能代表在特定環境下器件的持續工作性能,比如在計算2級的FFT時,Inter的80-teraflop持續工作性能只能達到其峰值性能的2.73%(20GFLOPs)。FPGA工作在一個較低的頻率下,運算峰值較低,但是可以通過硬件優化來實現對特定應用的更好的運行效率,即持續性能能達到更接近峰值運算性能的值,同時與GPU和CPU相比FPGA的功率效率更高。
一個特定的應用在不同的平臺上運算是不一樣的,對于運算結果的評估可以基于以下幾點:性能、功耗、功率效率、運行效率、成本以及其他。在本文中,我們分析每個期間在峰值性能以及能耗方面的發展趨勢,并對三者在一些科學應用的持續性能進行對比,找出對于某一特定應用的最佳運算平臺。
GPU最初被設計用來進行圖像處理并在該方面顯示出了強大的優勢,近10年來GPU逐漸被應用到通用計算領域,一般稱為GPGPU。基于其強大的并行計算能力,在一些其他的計算分析方面其性能早已可與多核CPU相媲美。
觀察多代GPU的發展,我們發現其峰值性能并不是簡單的線性增長,單精度浮點運算和雙精度浮點運算都是這樣。我們沒有辦法去簡單的描述GPU的全面的發展,因為各種GPU的結構非常多,所以在此只挑出在某個年份的最佳性能的一些GPU進行分析。
每一代GPU之間的性能提升超過1TFLOP,同時右圖中可知在某些年份工藝技術沒有提升,但是性能提升了,說明性能的增長不僅與新的制造工藝有關也與結構的優化有關。單精度和雙精度的性能差距由最初的相差10倍降到了最新一代的只差4倍左右。
關于能耗方面,GPU的功率效率(峰值性能與熱設計功耗(TDP)的比值)也是在穩定則增長,單精度的功率效率由最初的0.5GFLOPs/W增加到了GFLOPs/W,雙精度的功率效率由0.5GFLOPs/W增加到了6GFLOPs/W。這意味著GPU以一個增長的功率效率提供著一個驚人的運算性能。
GPU的外部存儲帶寬也非常高,Geforce 6800的帶寬為35 GBytes/s,K20, K20X 和 K40的帶寬分別為208,250和288 GBytes/s。.
通用CPU的峰值運算性能在近年來也獲得了顯著提升,圖2中顯示了部分Intel的著名CPU的峰值運算性能。
Intel最近推出的Xeon PHI 7120P處理器的峰值運算性能可以達到單精度2416GFLOPs,雙精度1208GFLOPs,Intel處理器計算性能的提升靠的是增加CPU的核數,這些處理器的功率效率和GPU相比較低。最初65nm技術的CPU的功率效率為0.1 GFLOPs/W,目前22nm技術下的CPU的功率效率已經增加到單精度9 GFLOPs/W,雙精度4.5 GFLOPs/W。
在Intel的這些處理器中,2008年出的一款多核處理器在3.16GHz頻率1.07V電壓下,峰值運算速度可以達到單精度1 TFLOP。CPU或者多核CPU的存儲器帶寬也很高。比如Xeon PHI 7120P的帶寬為352GBytes/s,比最近出的GPU稍微高一些。
FPGA的峰值運算性能由它所包含的乘法器和LUT的資源決定,觀察Xilinx公司的一些產品發現乘法器和LUT的資源并不是線性增長的(如圖3所示)。最新的Virtex7系列FPGA中 XC7VX980T含有3600個18*18的乘法器和612000個LUT,XC7V2000T含有2160個乘法器和1221600個LUT。
對于雙精度的峰值運算,只含有加法器運算的最佳的峰值運算性能出現在XC7V2000T FPGA中,為671GFLOPs;只含有乘法器運算的最佳峰值運算性能降為168GFLOPs;加法器和乘法器的組合運算的最佳運算性能為302GFLOPs,由XC7VX980T獲得。
FPGA的功率效率超過10GFLOPs/W,一般來說是比CPU和GPU要高的,而且隨著技術的發展FPGA的功率效率也會繼續不斷提升。比如Altera的一款能達到5TFLOPs的高性能FPGA就應用了Intel的14nm Tri-Gate,功率效率達到100GFLOPs。
為了更好的理解GPU,CPU,FPGA的相對發展,下面選取他們中在某些年最佳的性能的產品參數進行比較,包含單精度和雙精度的運算,結果如圖6,圖7所示。
在單精度的浮點運算中,GPU的性能一直是遙遙領先。在2011年FPGA和CPU的性能都有很大提升,而在2013年CPU的性能仍然在提升,而FPGA相對于GPU 的性能下降了。在2013年之前,FPGA的性能一直優于CPU,但在2013年,出現了多核CPU比如Intel Phi,因此情況改變了。
對于雙精度浮點運算,可以看到GPU的性能除了在前幾年表現的差強人意,在2011年之后則一直領跑后兩者。同時在2011年之后CPU的性能也超過了FPGA,而且在2013年CPU和GPU的性能也已經很接近了,大概只相差5%。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。