Portland Group發(fā)布CUDA C/C++多核x86編譯器
意法半導(dǎo)體全資子公司、全球領(lǐng)先的高性能計算(HPC)編譯器供應(yīng)商Portland Group宣布,性能優(yōu)化的支持多核x86平臺的PGI CUDA C/C++編譯器(CUDA-x86)將于2012年1月與PGI 2012版共同上市發(fā)售。
本文引用地址:http://cafeforensic.com/article/127254.htmCUDA是英偉達(NVIDIA)開發(fā)的通過NVIDIA GPU(圖形處理器)的強大處理性能大幅提升運算性能的并行計算架構(gòu)。CUDA-x86編程模型最初發(fā)布于2010年NVIDIA GPU技術(shù)研討會上,旨在將CUDA編程模型從圖形處理器延伸到系統(tǒng)級。CUDA-x86的發(fā)布是x86+GPU架構(gòu)成為集成并行平臺的重要一步。
Portland Group總監(jiān)Douglas Miles表示:“CUDA-x86 是PGI全力支持的CPU+GPU異構(gòu)系統(tǒng)編程藍圖中重要的里程碑。集成 PGI Accelerator編譯器的基于指令的GPU編程模型讓GPU編程入門變得極其容易。編程人員通過CUDA擴展架構(gòu)能夠編寫明確的擴展性很強的并行算法,然后針對特定平臺自由擴展并深度優(yōu)化算法。隨著基于加速器的系統(tǒng)普及率不斷提高,我們預(yù)計這兩種方法將變得至關(guān)重要。”
英偉達CUDA市場部總監(jiān)Sanford Russell表示:“CUDA是目前全球使用最廣泛的GPU并行編程模型,軟件開發(fā)人員需要同一代碼可在多個架構(gòu)上運行的靈活性。CUDA是在異構(gòu)計算環(huán)境中運行的高性能并行應(yīng)用軟件的通用編程模型,CUDA-x86的上市為用戶帶來了CUDA的優(yōu)勢。”
PGI 的CUDA-x86編譯器將CUDA C/C++視為AMD 和英特爾的通用多核x86微處理器本機并行編程語言。CUDA-x86完全支持英偉達CUDA C/C++圖形處理器編程語言,因此,編程人員只需重新編譯CUDA應(yīng)用程序源代碼,即可在x86 主處理器運行CUDA程序。
通過使用CUDA-x86編程模型,開發(fā)人員能夠編譯并優(yōu)化CUDA應(yīng)用程序,使其能夠運行在基于x86微處理器的工作站、服務(wù)器和服務(wù)器集群上,無論計算機是否配備NVIDIA GPU加速器。在轉(zhuǎn)譯為在 x86處理器上運行后,CUDA C/C++應(yīng)用程序使用英特爾和AMD的多核微處理器和SIMD (單指令多數(shù)據(jù)流)指令集執(zhí)行并行運算。
PGI CUDA C/C++多核x86編譯器的主要功能:
· 在x86主處理器上對本機 CUDA C/C++語言進行優(yōu)化和并行化處理。
· 在x86主處理器上低開銷本機并行執(zhí)行CUDA C/C++語言。
· 使用主處理器內(nèi)核執(zhí)行每個CUDA線程模塊;盡可能自動消除同步。
· 支持AMD和英特爾的最新處理器,支持新的AVX指令。
· 自動內(nèi)聯(lián)內(nèi)核中所有設(shè)備函數(shù),并將Chevron語法轉(zhuǎn)譯成并行/矢量循環(huán)。
· 在x86主處理器上完全支持英偉達的CUDA C/C++圖形處理器編程語言。
· 完全支持GPU紋理存儲器。
· 支持NVIDIA CUBLAS軟件庫。
· 支持PGI所有的英特爾和AMD主處理器優(yōu)化功能。
此外,PGI CUDA C/C++ GPU編譯器預(yù)計在2012年中期上市,屆時,通過使用PGI Unified Binary™ 技術(shù),在配備GPU時,二進制的可執(zhí)行程序?qū)⒛軌蚴褂肗VIDIA GPU,如無GPU配備,二進制的可執(zhí)行程序?qū)⒛J使用多核x86處理器。
性能數(shù)據(jù)
在一次主流并行編程模型性能對比測試中,PGI使用CUDA-x86版和OpenMP版LBM基準測試工具(屬于Parboil基準測試軟件)對CUDA和OpenMP程序的執(zhí)行時間進行了對比分析。下表列出了兩個不同編程模型的程序執(zhí)行時間:
評論