PGI发售可支持 OpenACC的PGI Accelerator编译器
2012-03-30
意法半导体全资子公司、全球领先的独立高性能计算(HPC)编译器及开发工具供应商Portland Group宣布,可支持新的图形处理其 (GPU)和图形加速器指令式编程模型OpenACC®1.0标准的PGI AcceleratorTMFortran和 C编译器已经上市。OpenACC®编程标准让程序员在所写程序中提供暗示或指示。
OpenACC标准由PGI、Cray和NVIDIA 3家公司联合创立,同时得到CAPS的支持,于2011年11月在 SC11大会上首次发布,与NVIDIA®CUDA®并行编程架构完全兼容,并可与其互操作。OpenACC 1.0技术规范是这三个创办公司联合开发的,大部分内容来自 PGI Accelerator编程模型。OpenACC应用程序接口(API)描述了一系列把采用标准C、C++和Fortran语言编写的循环调度语句和代码段从主CPU转移到所连接的加速器的编译器指令,让开发人员能够跨操作系统、主CPU和加速器进行代码移植。采用指令编译方法后,开发人员只需一个多平台多厂商兼容代码库,为跨平台和多代应用开发带来诸多优势和便利。
在采用OpenACC标准后,并行程序员可把代码从主CPU移到所连接的加速器上,通过指示(又称指令识别)适合加速的代码段。除向编译器带来并行计算机会外,指令还能用于说明如何向一个特定的加速器高效复制循环语句和如何优化数据移动。指令编程模型为开发人员提供更多开发资源,让编译器执行主CPU减负的精细过程,把计算任务转移到加速器,让开发人员专心优化算法和应用功能。指令编程模型的主要好处是可大幅提升应用软件性能,而无需修改底层源代码。
支持OpenACC的PGI Accelerator编译器
PGI Accelerator编译器于2008年首次发布,新版在以下几个方面进一步强化了OpenACC标准,为用户提供更强的功能和更优的设计灵活性:
1)自动生成最佳的循环调度指令;2)自动占用共享内存空间;3)自动执行归约求和运算(automatic sum reductions);4)与CUDA Fortran和CUDA C/C++互操作;5)在有无加速器的条件下,PGI Unified BinaryTM技术可执行文件均能正常工作。