圖1 在OpenCL、CUDA等通用開發(fā)平臺(tái)的支持下,異構(gòu)系統(tǒng)的障礙在被掃清
而隨著OpenCL、Direct Compute的現(xiàn)身,則逐步將這類平臺(tái)推向了高潮。OpenCL全稱Open Computing Language,是第一個(gè)面向異構(gòu)系統(tǒng)通用目的并行編程的開放式、免費(fèi)標(biāo)準(zhǔn),也是一個(gè)統(tǒng)一的編程環(huán)境,便于軟件開發(fā)人員為高性能計(jì)算服務(wù)器、桌面計(jì)算系統(tǒng)、手持設(shè)備編寫高效輕便的代碼,而且廣泛適用于多核心處理器(CPU)、通用處理器(GPU)、Cell類型架構(gòu)以及數(shù)字信號處理器(DSP)等其他并行處理器,在游戲、娛樂、科研、醫(yī)療等各種領(lǐng)域都有廣闊的發(fā)展前景。OpenCL是首個(gè)開放的免費(fèi)通用并行計(jì)算標(biāo)準(zhǔn),可統(tǒng)一管理一臺(tái)主機(jī)的所有計(jì)算資源 (含CPU、GPGPU),OpenCL可將這些資源統(tǒng)一看作計(jì)算單元,共同發(fā)揮運(yùn)算能力完成各類計(jì)算任務(wù)。OpenCL統(tǒng)一編程環(huán)境,讓開發(fā)者也能輕松利用異構(gòu)平臺(tái)寫出高效的程序來。
微軟在DX11中引入了通用計(jì)算接口標(biāo)準(zhǔn)Direct Compute亦值得關(guān)注,其在渲染架構(gòu)中新增的Compute Shader,可更大限度發(fā)揮通用GPU的并行計(jì)算優(yōu)勢,將其應(yīng)用范圍從單純的圖形渲染拓展到更多計(jì)算領(lǐng)域,因此通用計(jì)算性能的高低將在今后成為衡量顯卡整體性能的一部分。通過降低系統(tǒng)資源開銷與提高效能,新的Direct Compute可讓新一代顯卡具有更強(qiáng)的通用計(jì)算效能。
這些開發(fā)平臺(tái)的出現(xiàn)為GPGPU的規(guī)?;瘧?yīng)用掃清了障礙,一些劃時(shí)代的產(chǎn)品正在研制中或被推出。Intel、 AMD皆為此孜孜不倦,而NVIDIA搶先推出的最新GPU"費(fèi)米(Fermi)"則是這方面最具代表意義劃時(shí)代的通用GPU產(chǎn)品,其雙精度浮點(diǎn)計(jì)算性能的大幅度提升可更好滿足當(dāng)前工程領(lǐng)域高性能計(jì)算的需求。
異構(gòu)HPC紛現(xiàn)
通用GPU正一步步向用戶走來。雖然通用GPU目前要想完全取代CPU尚不現(xiàn)實(shí),但通用GPU可以和CPU配合組成異構(gòu)系統(tǒng)來實(shí)現(xiàn)更強(qiáng)勁的計(jì)算性能,特別是圖形計(jì)算性能。這是因?yàn)橥ㄓ肎PU是專門為圖形運(yùn)算而設(shè)計(jì)的,考慮到了圖形運(yùn)算的特殊性。這讓其更適合用于海量數(shù)據(jù)重復(fù)運(yùn)行場合,更適合處理SIMD運(yùn)算、科學(xué)計(jì)算、數(shù)據(jù)庫分析等高性能計(jì)算需求。這讓通用GPU正逐步成為前沿用戶關(guān)注的焦點(diǎn),而通用GPU的市場化之路也正被打開。
通用GPU要想在市場上獲得突破,顯然HPC領(lǐng)域?qū)⒊善渥畲蟮淖罹叽硪饬x的陣地。最有名的異構(gòu)系統(tǒng)是著名的超級計(jì)算機(jī)"Roadrunner(走鵑)"。其每個(gè)節(jié)點(diǎn)由一臺(tái)Opteron刀片服務(wù)器加上兩臺(tái)PowerX Cell刀片服務(wù)器組成。其中,6912顆(早期的配置)雙核Opteron主頻僅為1.8G,只能提供49.8TF的峰值浮點(diǎn),因此,Roadrunner的運(yùn)算能力幾乎全部由PowerX Cell提供,而且效率超過了75%。雖然由于采用通用化不足的Cell讓走鵑很難用,但這讓很多用戶看到了異構(gòu)系統(tǒng)強(qiáng)大的一面,讓異構(gòu)計(jì)算成為近年 HPC領(lǐng)域的新趨勢,并在國際高性能計(jì)算領(lǐng)域掀起一陣熱潮,被公認(rèn)為提高HPC性能的有效手段。
此后,國內(nèi)的"天河一號"超算在這方面也進(jìn)行了實(shí)驗(yàn)。天河一號也是款異構(gòu)系統(tǒng),其采用6144個(gè)Intel通用處理器(3072×2 Intel Quad Core Xeon E5540 2.53GHz/E5540 3.0GHz),和5120個(gè)AMD GPU加速處理器(2560 ATI Radeon 4870×2 575MHz),內(nèi)存總?cè)萘?8TB,點(diǎn)對點(diǎn)通信帶寬40Gbps,共享磁盤總?cè)萘縿t達(dá)到1PB。在該系統(tǒng)的幫助下,其以每秒鐘1206萬億次的峰值速度和每秒563.1萬億次的Linpack實(shí)測性能,勇入TOP500榜十強(qiáng)。
圖2 新一代通用GPU正成為異構(gòu)HPC的最佳解決方案
而"星云"則是近期異構(gòu)系統(tǒng)最耀眼的新星。伴隨最新TOP500超算排行榜的公布,中國超級計(jì)算機(jī)"星云"讓全世界為之一震,其峰值理論運(yùn)算能力達(dá)2.98PFlop/s,而Linpack性能為1.27PFlop/s,位于第35屆超算排行榜第二位,這也是中國超級計(jì)算機(jī)在TOP500榜單歷史上的最高名次。星云超級計(jì)算機(jī)采用自主設(shè)計(jì)的HPP體系結(jié)構(gòu),處理器是32nm工藝的六核至強(qiáng)X5650,并且采用了 NVIDIA Tesla C2050 GPU做協(xié)處理,由4640個(gè)計(jì)算單元組成。在這種高效異構(gòu)協(xié)同計(jì)算體系的支持下,讓其性能倍增,并能更好的應(yīng)用于云計(jì)算等領(lǐng)域。而其中的亮點(diǎn)Tesla 20系列通用GPU基于代號為"Fermi"的下一代CUDA架構(gòu),支持技術(shù)與企業(yè)計(jì)算所"必備"的諸多特性,其中包括C++支持、可實(shí)現(xiàn)極高精度與可擴(kuò)展性的ECC存儲(chǔ)器以及7倍于Tesla 10系列GPU的雙精度性能。Tesla C2050與C2070 GPU旨在重新定義高性能計(jì)算并實(shí)現(xiàn)超級計(jì)算的平民化,與最新的四核CPU相比,Tesla C2050與C2070計(jì)算處理器可以十分之一的成本和二十分之一的功耗就可實(shí)現(xiàn)同等超級計(jì)算性能。
在最新的TOP500超算榜上我們還注意到位于19位的Mellanox Mole-8.5超級計(jì)算機(jī)也采用了異構(gòu)系統(tǒng),該機(jī)位于中國科學(xué)院過程工程研究所。Mole-8.5系統(tǒng)共計(jì)有372個(gè)計(jì)算和數(shù)據(jù)處理節(jié)點(diǎn)(Node) –4U的雙路GPU服務(wù)器TYAN FT72-B7015,其可嵌入2顆Intel Xeon 5520系列處理器和6個(gè)NVIDIA Tesla C2050系列通用處理器,幾乎可以達(dá)到4Tflops雙精密度最高效能的理論值。這讓Mole-8.5系統(tǒng)可提供高達(dá)207.3TFlops的最高運(yùn)算效能理論值。數(shù)據(jù)中心不僅能夠提供給客戶最大的運(yùn)算能力,還可以提供先進(jìn)的流動(dòng)點(diǎn)的數(shù)據(jù)處理能力,滿足研究和設(shè)計(jì)的不同需要。使用戶能夠縮短運(yùn)行科學(xué)發(fā)現(xiàn)過程中至關(guān)重要的應(yīng)用程序所需的時(shí)間,過程工程研究所亦正使用Mole-8.5在化學(xué)工程、材料科學(xué)、生物化學(xué)、數(shù)據(jù)與圖像處理、石油開采與采收率以及冶金等領(lǐng)域開展科學(xué)模擬。
后記
圖3 在個(gè)人HPC和普通服務(wù)器領(lǐng)域,異構(gòu)系統(tǒng)的力量也在展現(xiàn)
通用GPU不僅在TOP500排行榜上、在超級計(jì)算機(jī)領(lǐng)域開始展露頭角,在普通HPC和個(gè)人HPC、服務(wù)器方面也在批量展示實(shí)力。Appro的1U Tera GPU服務(wù)器,采用兩顆AMD Opteron 6100八/十二核心處理器或兩顆Intel Xeon 5500/5600四/六核心處理器,配備了四塊Fermi Tesla M2050,擁有1792個(gè)流處理器,可滿足HPC客戶對低價(jià)位、高密度和超級計(jì)算性能的需求。Supermicro提供GPU計(jì)算系統(tǒng)FC405,在 4U塔式機(jī)箱SC747TQ-R1400之內(nèi)并排安放四塊Fermi Tesla C2050,搭配Xeon 5500/5600系列處理器,還支持八個(gè)熱插拔3.5寸SAS/SATA硬盤位,適合集群配置和個(gè)人HPC。浪潮倚天Tesla HPC集群以更低的功耗,更低的成本給客戶提供超級計(jì)算性能,相比標(biāo)準(zhǔn)的只有CPU架構(gòu)的集群,Tesla預(yù)配置集群使用更少的系統(tǒng),氧氣泵采用 NVIDIA Tesla S1070計(jì)算系統(tǒng)搭建,S1070系統(tǒng)每個(gè)GPU計(jì)算單元有4 GB的專用存儲(chǔ)器,支持IEEE 754單精度和雙精度浮點(diǎn)數(shù);提供1個(gè)快速102GB/sec的GDDR3內(nèi)存接口,可以加速到節(jié)能并行計(jì)算的轉(zhuǎn)變,而且可以通過規(guī)?;瘉砀?、更準(zhǔn)確地解決世界上最重要的計(jì)算挑戰(zhàn)??傊?,在通用GPU的推動(dòng)下,服務(wù)器和HPC的異構(gòu)時(shí)代正悄然到來,這種趨勢已變得勢不可擋。