STMicroelectronicsは、同社100%子会社で高性能コンピューティング(HPC)向けコンパイラを手掛けるPortland Group(PGI)の「PGI Accelerator Fortran/C/C++コンパイラ」がAMDのAPUとディスクリートGPUアクセラレータで使用可能になることを発表した。
PGIは、AMDとの連携によりPGI Acceleratorのディレクティブ・ベース・コンパイラを拡張し、AMD製GPUアクセラレータで直接動作するコードと、AMD製APUのCPU・GPU演算機能の両方を自動的に使用する異機種x64+GPU実行可能ファイルを生成することを可能とする。
2009年に発表されたPGI Accelertorコンパイラは、演算処理をx64ホスト・プログラムからGPUアクセラレータに自動オフロードする規格に準拠したFortranおよびCコンパイラで、並列プログラマは、同プログラミング・モデルを用いることで、ディレクティブと呼ばれる修飾子を使用し、コードをホストCPUから付随するアクセラレータへのオフロードが可能となり、アクセラレーションに適したコード領域を特定することが可能となる。
ディレクティブは、コンパイラに並列化の機会を提示するとともに、ループを特定のアクセラレータに効率的にマッピングする方法およびデータの移動を最適化する方法の詳細を指定するためにも使用できるほか、演算処理をアクセラレータにオフロードするための細かい作業をコンパイラに任せることで、開発者がアルゴリズムとアプリケーションに注力することを可能とする。
コンパイラ・ディレクティブの主なメリットは、既存ソース・コードに対して移植性を阻害しない形で段階的に変更を行うことで、アプリケーションのパフォーマンスを改善することが可能になる点で、今回の提携により各種コンパイラに拡張が施され、AMD製GPUアクセラレータで直接動作するコードと、AMD製APUのCPU・GPU演算機能の両方を自動的に使用する異機種x64+GPU実行可能ファイルを生成することが可能となる。
なお、PGI AcceleratorコンパイラのAMDアクセラレータ対応版は事前サポートを2013年中旬に予定しており、2013年後半にリリースする予定だとしている。また、同サポートは、現在PGIサブスクリプションを保有するPGI Acceleratorライセンス所有者に無償で提供される予定だという。