預計2020年出現(xiàn)百億億次級超級計算機
如果超級計算機繼續(xù)以當前的速度增長,我們將在2020年看到第一臺百億億次級計算機。
然而,田納西大學諾克斯維爾分校的研究員Jack Dongarra表示,這樣的大型計算機系統(tǒng)架構(gòu)師將面臨一系列關(guān)鍵問題的挑戰(zhàn)。
在達到百億億次級(exascale)性能前我們可能還有很長一段路要走。一個exascale機器將有一百億億次FLOPS(每秒浮點運算次數(shù))的能力,即使是今天最快的超級計算機,也只有exascale計算機不到20%的計算機能力。

新的高度
在上周公布的最新一期的超級計算機Top500名單中,最快的計算機是美國橡樹嶺國家實驗室的Titan系統(tǒng),能夠達到17.59petaflops。
但每年統(tǒng)計兩次的500強名單顯示了超級計算的速度正在快速增長,從名單上看,超級計算機似乎每十年左右就增加十倍的功率。1996年,500強名單上出現(xiàn)了第一個teraflop級計算機,2008年首個petaflop級計算機出現(xiàn)在名單中。根據(jù)這個進度,可以推斷出exascale級計算可能在2020年實現(xiàn)。
高性能計算(HPC)社區(qū)已經(jīng)把exascale計算看做一個重要的里程碑。英特爾已經(jīng)創(chuàng)建了一個系列的大型多核處理器,稱為Phi,英特爾希望Phi將來可以作為exascale計算機的基礎(chǔ)。
Dongarra勾勒出了exascale機器的一些特點:這樣的機器的節(jié)點數(shù)量可能會介于10萬和100萬之間,將能夠在任何給定的時間執(zhí)行多達十億個線程。單個節(jié)點的性能應該介于1.5和15teraflops之間,并且每秒將需要有200到400千兆字節(jié)的吞吐量。
Dongarra表示,超級計算機制造商將不得不構(gòu)建他們的機器,使其成本和能耗并不會和性能一樣以線性方式增加。

軟件挑戰(zhàn)
除了硬件上的挑戰(zhàn),exascale級超級計算機的設(shè)計師也必須解決軟件問題。今天的機器在許多不同的節(jié)點間傳遞任務(wù),但這種方法隨著節(jié)點數(shù)量的增加需要進行精簡。
Dongarra 表示:“目前我們的并行處理模型是一個Fork/Join模型,但是你不能在exascale級別上這么做。我們必須改變我們的模型,我們必須更加同步。”同時,算法需要開發(fā),以減少整體節(jié)點之間的通信量。
另外,還必須考慮其他因素。軟件必須配備內(nèi)置的例程以進行優(yōu)化。“我們不能依靠用戶正確的設(shè)置讓軟件在接近峰值性能的地方運行,” Dongarra說。故障恢復將是另一個重要功能,重復性的結(jié)果或復雜的計算在運行時將會不止一次的產(chǎn)生完全相同的答案。
重現(xiàn)性可能看起來像一臺計算機的明顯特征。但事實上,它對多節(jié)點超級計算機上的龐大計算來說可能是一個挑戰(zhàn)。
“從數(shù)值方法的角度來看,很難保證操作可重復性,” Dongarra說,“主要的問題是對一個并行的總結(jié)數(shù)據(jù)做簡化。如果我不能保證這些聚在一起的數(shù)字的順序,我就會有不同的舍入誤差。這樣微小的差異被放大到某種程度,可能導致答案災難性的分歧。”
Dongarra 表示:“我們必須想出一個場景,在該場景中,我們可以保證這些操作的順序完成,所以我們可以保證我們能得到相同的結(jié)果。”