NVIDIA宣布,15.10 版本的 PGI Accelerator Fortran、C 以及 C++ 編譯器現(xiàn)已問世,該版本新增了在 x86 架構(gòu)多核微處理器上支持 OpenACC 指令并行編程標(biāo)準(zhǔn)。
全新的 PGI 編譯器可實現(xiàn)高性能移植,讓開發(fā)者能夠?qū)?OpenACC 的源代碼進(jìn)行編譯,使其可以在多核 CPU 或 GPU 加速器上并行地執(zhí)行。這種功能可為程序員帶來巨大的靈活性,讓他們能夠憑借單一版本的源代碼開發(fā)出可充分利用多種系統(tǒng)架構(gòu)的應(yīng)用。
NVIDIA PGI 編譯器與工具總監(jiān) Douglas Miles 表示:“我們的目標(biāo)是讓 HPC 開發(fā)者能夠利用通用的源代碼庫在各大 CPU 與加速器平臺上輕松移植應(yīng)用并實現(xiàn)一致的高性能。這種功能在通往百億億次級 (Exascale) 計算的競賽中尤其重要。在這一競賽中,將會有各種各樣的系統(tǒng)架構(gòu)需要更靈活的應(yīng)用編程方式?!?/p>
這一全新的 PGI 特性能夠?qū)Υa中的 OpenACC 計算部分進(jìn)行編譯,以便在 x86 處理器和多路服務(wù)器的所有處理核心上實現(xiàn)并行執(zhí)行。所有這些處理核心會被視為一個共享內(nèi)存的加速器,從而在所生成的 OpenACC 程序中消除了所有數(shù)據(jù)移動的系統(tǒng)開銷。在默認(rèn)情況下,該編譯器生成的代碼能夠利用系統(tǒng)中所有可用的核心。程序員可以使用多種方法來控制和調(diào)整這一行為。
英國原子武器研究所 (AWE) 的 Wayne Gaudin 表示:“在不改動代碼的情況下能夠在 CPU 上運行 ACC 并且性能與我們的 OpenMP/MPI 版本相當(dāng),而且在 GPU 上可實現(xiàn) 4 倍性能提升,這著實令我們眼前一亮。從高性能移植與代碼前瞻性的角度而言,這是非常完美的成績?!?/p>
在多核 CPU 上運行 OpenACC 的主要優(yōu)勢有:
· 可有效利用多核 CPU 或多路服務(wù)器的所有核心來實現(xiàn)并行執(zhí)行
· 通用編程模型可在 CPU 與 GPU 上使用 Fortran、C 以及 C++ 等語言
· 在程序中使用 KERNELS 指令能夠快速利用現(xiàn)有的多核并行機制,從而為并行執(zhí)行增進(jìn)優(yōu)化
· 在多核 CPU 與 GPU 上可擴展性能
橡樹嶺國家實驗室項目總監(jiān) Buddy Bland 表示:“采用突破性硬件技術(shù)需要付出許多代價,將 HPC 應(yīng)用從一個平臺移植到另一個平臺就是其中最重大的代價之一。從 Titan 這樣的超級計算機到美國能源部即將問世的各大系統(tǒng),針對多核 x86 CPU 的 OpenACC 讓這些系統(tǒng)上現(xiàn)有的純 CPU 應(yīng)用和 GPU 應(yīng)用能夠具備延續(xù)性和代碼移植性,可以在這些系統(tǒng)之間移植?!?/p>
OpenACC 風(fēng)頭正勁
目前已有 10,000 多名開發(fā)者使用 OpenACC,多項近期的開發(fā)成果均凸顯出在高性能計算領(lǐng)域中采用 OpenACC 的重要性越來越高。近期在世界各地舉辦的黑客松 (Hackathon) 活動中,各個科學(xué)領(lǐng)域中的專家均利用加速器和 OpenACC 來加速其科學(xué)應(yīng)用。這些應(yīng)用涉及的領(lǐng)域十分廣泛,其中包括 MRI 圖像重建 (PowerGrid)、計算流體動力學(xué) (INCOMP3D、HiPSTAR 和 Numeca)、宇宙學(xué)與天體物理學(xué) (RAMSES、CASTRO 和 MAESTRO)、量子化學(xué) (LSDALTON) 以及計算物理學(xué) (NekCEM) 等等。
此外,Gaussian 公司還宣布,該公司正在利用 OpenACC 來把 GAUSSIAN 計算化學(xué)應(yīng)用移植到加速器上來。最近在法國安納西舉辦的有關(guān)氣候與天氣的 iCAS2 大會上,瑞士聯(lián)邦氣象氣候局 (Meteosuisse) 宣布,該局已部署 GPU 加速版本的 COSMO,這是全球首款在 GPU 加速器上運行的正式版天氣預(yù)報應(yīng)用。
在最近一項由 150 名 OpenACC 開發(fā)者參加的調(diào)查問卷中,94% 的調(diào)查對象報告稱,在加速器上運行代碼時實現(xiàn)了速度提升。在這些用戶當(dāng)中,90% 以上的人會推薦 OpenACC。
如需詳細(xì)了解支持 OpenACC 的 PGI Accelerator 編譯器,敬請訪問 www.pgroup.com/accel。如需了解有關(guān) OpenACC API 與 OpenACC 標(biāo)準(zhǔn)的更多信息,敬請訪問 www.openacc.org。
除了在多核 CPU 上支持 OpenACC 以外,PGI 15.10 版本還包含預(yù)覽版 PGI Fortran、C 以及 C++ 編譯器。這些編譯器用于 OpenPOWER CPU,可在 NVIDIA GPU 上支持 OpenACC。
在多核 CPU 上支持 OpenACC 的 PGI 15.10 預(yù)計本月上市。作為 NVIDIA OpenACC 工具包的一部分,新用戶注冊即可免費試用 90 天。而大學(xué)學(xué)生與教員均可申請免費的 PGI 許可證。