Portland Group(PGI)可支援新繪圖處理器(GPU)和繪圖加速器指令式編程模型OpenACC 1.0標準的PGI Accelerator Fortran及C編譯器已上市;OpenACC編程標準讓程式人員在所寫程式中提供暗示或指示功能。
PGI總監Douglas Miles表示,PGI持續爲科學工程領域的專家提供更簡易、更高效的GPU編程工具,作爲PGI Accelerator編程模型的一個子集,OpenACC標準特別適合PGI現有的編譯器産品。Fortran 2003和C語言版PGI Accelerator編譯器,可支援高級指令式x64+GPU編程和採用CUDA C/C++/Fortran擴展語言的GPU編程。
OpenACC標準由PGI、Cray以及NVIDIA三家公司聯合創立,同時得到CAPS的支援,並於2011年11月在SC11大會上首次發布,與NVIDIA CUDA平行編程架構完全相容,並可與其共同使用。
OpenACC 1.0技術規範是這三個創辦公司聯合開發的,大部分內容來自PGI Accelerator編程模型。OpenACC應用程式介面(API),描述一系列把採用標準C、C++和Fortran語言編寫的循環調度語句和代碼段從主處理器(CPU)轉移到所連接的加速器的編譯器指令,讓開發人員能跨作業系統、主CPU以及加速器進行代碼移植。
採用指令編譯方法後,開發人員只需一個多平台多廠商相容代碼庫,為跨平台和多代應用開發帶來許多優勢及便利性。
採用OpenACC標準後,平行程式人員可把代碼從主CPU移到所連接的加速器上,透過指示(指令識別)適合加速的代碼段。除向編譯器帶來平行運算機會外,指令還能用於說明如何向一個特定加速器高效複製循環語句和如何最佳化數據移動。
指令編程模型為開發人員提供更多開發資源,讓編譯器執行主CPU減負的精細過程,把運算任務轉移到加速器,讓開發人員專心最佳化算法和應用功能。指令編程模型的主要好處是可大幅提升應用軟體性能,而無需修改底層源代碼。
PGI Accelerator編譯器於2008年首次發布,新版本進一步加強OpenACC標準,為用戶提供更強的功能和更高的設計靈活性。PGI Accelerator編譯器包括PGI的全套的x86主機性能最佳化技術,其中包括自動SIMD矢量化、自動平行化、過程間分析和行內函式等。
目前PGI Accelerator Fortran和C99編譯器可支援在Linux、OS X和Windows系統下執行的x64+NVIDIA系統。所有採用英特爾(Intel)和超微(AMD)x64處理器且內建具有CUDA功能的NVIDIA GPU電腦系統都可支援PGI Accelerator Fortran和C99編譯器。PGI 2012編譯器12.6版及未來的版本都將支援OpenACC功能。
PGI網址:www.pgroup.com