GPU爭奪霸權(quán)!NVIDIA談超級計算機發(fā)展
● Tesla基于NVIDIA CUDA,該技術(shù)最顯著的特點就是能夠利用GPU的并行計算能力,在大規(guī)模、高帶寬計算中有著極大的優(yōu)勢。 但是,面對串行計算密集型任務(wù),Tesla是否有解決辦法呢?
Andy Keane:GPU及其內(nèi)部的CUDA架構(gòu)是專為并行計算而設(shè)計的。
串行計算是一種有很大區(qū)別的架構(gòu),這種架構(gòu)的設(shè)計目的是為了解決不同的問題。CPU執(zhí)行指令的方式就是一個接著另一個地執(zhí)行。CPU中有許多能夠加速串行計算的技術(shù)。高速緩存、無次序執(zhí)行、超標量技術(shù)、分支預測……均為抽取指令的技術(shù)或一系列指令的串行級并行機制。CPU對片上高速緩存的設(shè)計與容量的依賴也非常大。如果程序大小與CPU高速緩存容量不匹配,那么該程序在CPU上的運行速度將會很慢。
GPU內(nèi)部的并行計算架構(gòu)圍繞兩個基本概念而設(shè)計。首先,程序中的數(shù)據(jù)可分成許多個部分,而為數(shù)眾多的核群可以并行地處理這些數(shù)據(jù)。第二個架構(gòu)方面的設(shè)想是,數(shù)據(jù)將不與高速緩存匹配。例如在圖形計算或石油天然氣數(shù)據(jù)處理上,數(shù)據(jù)量可能會達到兆字節(jié)甚至是太字節(jié),用高速緩存來容納如此巨大的數(shù)據(jù)量幾乎是不切實際的。考慮到這兩點設(shè)想,GPU被設(shè)計為能夠使用數(shù)以千計的線程,所有線程均并行地執(zhí)行,能夠訪問巨大容量的本地存儲器。在最新的Tesla產(chǎn)品中,每顆GPU均配備4GB存儲器,可容納待執(zhí)行的數(shù)據(jù)。同時針對反復使用的數(shù)據(jù),還設(shè)有較小的片上存儲空間,GPU所配備的巨大容量存儲器等同于CPU內(nèi)部的高速緩存,只是容量大了許多倍而已。
● 獲取軟件時,中國的超級計算機用戶要么購買商業(yè)軟件解決方案,要么自己開發(fā),或者在商業(yè)軟件解決方案的基礎(chǔ)上進行二次開發(fā)。 CUDA與獨立軟件供應(yīng)商之間有一定的合作,你有沒有成熟的軟件應(yīng)用程序推薦給用戶使用? CUDA怎樣幫助這些想要自己開發(fā)軟件的用戶?
Andy Keane:我們與打算發(fā)布超級計算軟件的獨立軟件供應(yīng)商都進行了積極的開發(fā)工作。分子動力學領(lǐng)域的《NAMD/VMD》以及《GROMACS》是為群集GPU發(fā)布的兩個應(yīng)用程序例子。在美國的超級計算展會上,我們還展示了許多用于石油天然氣領(lǐng)域地震處理、量子化學以及Ansys有限元設(shè)計的應(yīng)用程序。
對于想要自己設(shè)計和開發(fā)應(yīng)用程序的開發(fā)人員,用于CUDA架構(gòu)的并行計算開發(fā)C語言編譯器可從NVIDIA網(wǎng)站上免費下載。Portland Group的Fortran等其它編譯器也正在陸續(xù)推出。有很多來自NVIDIA以及其它來源的程序庫,這些庫使應(yīng)用程序更易于開發(fā)。針對這些不懂C語言或Fortran的開發(fā)人員,Accelereyes以及Wolfram(Mathematica)等公司還提供了GPU加速版的軟件。因此你可以看到,利用GPU計算優(yōu)勢的方式有許多種。
關(guān)注我們



