全球领先的高性能运算(High Performance Computing,HPC)编译器供应商Portland Group日前发布了支持OpenACC® API的Beta版PGI Accelerator™ Fortran、C和C++编译器,主要用于AMD加速处理器(APU)和独立图形处理器(discrete Graphics Processing Units,dGPUs)。  

    Portland公司总监Douglas Miles表示:“提高科学家和工程设计人员开发并维护应用软件的生产率和代码移植性能是PGI的目标之一。OpenACC标准是针对高性能运算社区对独立于厂商和平台的指令式加速器编程模型的需求而开发。增加对AMD APU和GPU的PGI Accelerator支持,是PGI异构并行计算在OpenACC和编译器技术发展过程中的最新进展。”
 
    在CAPS、PGI、Cray和NVIDIA合作开发了OpenACC API,并于2011年11月发布了正式标准。目前,PGI编译器已经在采用CUDA®并行编程架构的NVIDIA® GPU上支持OpenACC。OpenACC 1.0是创办成员企业在PGI Accelerator编程模型的基础上合作开发的标准。OpenACC 2.0标准最近刚获批准。
 
指令式编程
 
    OpenACC应用编程接口(API)描述一个使用标准的C、C++ 和Fortran语言指定代码循环和代码段的编译器指令集。这些代码段可从主CPU下载到所连接的加速器,跨操作系统、主CPU和加速器移植。通过指示编译器进行并行处理,指令能够让编译器完成将运算任务复制到加速器的详细工作,以大幅提升应用软件的性能。通过使用指令,开发人员可构建一个兼容多平台、多厂商的代码库,这对于多平台和多生成应用开发是一个重要优势。
 
    最近对1200余名OpenACC评估员进行的一次投票调查显示,超过70%的受访者表示OpenACC好用,超过75%的受访者感受到使用加速器后应用速度显著提升。
 
    AMD服务器软件规划部总监Margaret Lewis表示:“AMD对于AMD APU和独立图形处理器、可支持OpenACC API的beta版PGI Accelerator Fortran、C和C++编译器的发布感到非常高兴,HPC研发人员和程序员正在开始接受OpenACC,因为他们在寻找能够充分发挥加速计算技术优势的最简单方法。OpenACC提供一个让程序员使用相似的编程方法加快应用运行速度的最简易方法,还提供一个让传统应用保持代码移植性,同时还能利用最新的高性能异构并行计算架构的途径。”
 
    首个在AMD dGPU 和 APU平台上支持OpenACC标准的Beta版PGI Accelerator编译器现在开始限量供应,公开Beta版目前计划2013年下半年上市。