PGIトップ › PGIサポートセンター › PGIリリースノート

ソフテックは、PGI 製品の公認正規代理店です

PGI 2014 コンパイラ製品 リリースノート

support

 NVIDIA 社 PGI の PGIコンパイラ製品のバージョンPGI 2014 (PGI 14.x) をリリースしましたのでお知らせいたします。本リリースにおける製品の主な新機能、特徴に関してPDFファイルに記述しておりますので、詳細は、以下のPDFファイルをご覧下さい。なお、ソフトウェアは こちらのページにてダウンロード可能です。
 現在の最新バージョンは、PGI 2014(旧バージョン形式で言うと PGI 14.x) となります。年間サブスクリプション契約をご購入あるいはご継続中のお客様は、新リリースのソフトウェアをダウンロードの上、インストールをお願いいたします。「バージョンアップの方法」や最新の「日本語インストールの手引き」は、お客様専用のページへご案内いたしますので、そのページをお分かりにならない場合は、弊社 support@softek.co.jp までご連絡下さい。

Current Version

製品名 現バージョン
PGI (Accelerator) Workstation / Server for Linux
14.10
PGI (Accelerator) Workstation / Server for Windows 14.10
PGI (Accelerator) Workstation for OS X 14.10
PGI (Accelerator) Visual Fortran (Windows) 14.10
PGI CDK for Linux (ご契約ユーザ様専用ページにて) 14.10
PGI製品のお求めは、米国 PGI と 20 年以上に及ぶ強力なパートナーであるソフテックへ

▶ PGI 2014 (PGI 14.x) リリースノート(PDF)

PGI コンパイラ製品の最新バージョン(Release 2014) の日本語版リリースノートについては、PDFファイルをご覧下さい。
英語版のリリースノートは、こちらをご覧下さい

PDF

PGI 14.10 (2014年10月)

PGI 14.9 (2014年9月)

■ PGI Accelerator に関して

  • CUDA 6.5 に対応した
  • CUDA 6.5 toolkit をバンドル。これに伴い、コンパイラのデフォルト toolkit は、以前のリビジョンのデフォルト CUDA 5.5 から CUDA 6.0 に変更された。少なくともシステムには CUDA 6.0 以上のドライバーの実装が必要。コンパイル・リンク時、CUDA 6.5 toolkit のソフトウェアを使用したい場合は、-tesla=cuda6.5 オプションを明示的に指定する必要がある。また、CUDA 6.5 の機能を使用する場合は、NVIDIA CUDA 6.5 のドライバーのインストール実装も必要となる。
  • CUDA 6.5 toolkit のバンドルに関する制約事項
    • Linux 32-bit版には cuBLAS, cuSPARSE, cuFFT and cuRAND ライブラリはバンドルされていない。
    • Windows 7/8/2012 OS用のみCUDA 6.0 and 6.5 Toolkitsが含まれる。Windows XP/2003/2008 OS用のインストールパッケージには CUDA 6.0 のみがバンドルされている。
    • CUDA 6.5 Toolkit は、Windows Server 2012 上ではサポートされていない。Windows Server 2012 R2 上ではサポートされている。
    • CUDA 6.5 Toolkit は、Windows Vista上ではサポートされていない。
    • CUDA 6.5 Toolkit は、OS X 32ビット上ではサポートされていない。
  • 並列性を定義する Cluases(gang,worker,vector)を指定していない acc routine ディレクティブは、seq clause が指定されているものとして扱う。
  • CUDA Fortran 用の -Mcuda オプションを指定して、かつ、OpenACC オプション(-ta=tesla あるいは-taフラグを指定しない -accオプション)を指定してNVIDIA tesla 用のターゲットとしてコンパイル・リンクした場合、プログラムの OpenACC 部のデータ転送とカーネルのロウンチを同期させるための挙動は、STREAMゼロ(id=0) の挙動をデフォルトとする。これによって、OpenACC のデータ転送とカーネル起動は、他のCUDA同期処理と適切に進行できる。-Mcuda オプションを指定しないコンパイルを行う場合、CUDA STREAMゼロに関連したシリアル処理化を避けるため、プログラムの同期処理としては STREAM even が生成される。

バグフィックス

PGI 14.7 (2014年7月)

■ PGI Accelerator の新機能と強化ポイント

  • CUDA Fortran における CUDA managed data 属性のサポート(CUDA Fortran Programming Guide and Reference 3.2.2 項を参照してください)
  • OpanACC C++ の機能拡張
  • OpenACC 2.0 機能の追加
    • OpenACC declare directives 上の C global (extern) 変数をサポート(英文 PGI Release Notes 2.6.7 項参照)
    • OpenACC declare directives 上の Fortran module variables のサポート(英文 PGI Release Notes 2.6.7 項参照)
    • Fortran,C/C++ の atomic ディレクティブのフル・サポート
    • OpenACC directivesの wait clause のサポート
    • wait directive の async clause のサポート
    • CUDA toolkit のバージョンをコマンドライン上で明示的に指定した際、当該バージョンがシステム上に実装されていない場合、コンパイラはエラーメッセージを出して停止するように変更された(以前は、warnig メッセージを出し、host(CPU)用のコードを生成していた)
  • ネストされたループに対するアクセラレータコード生成の向上
  • CUDA Fortran におけるデバッグ・モジュールのスコープ変数のサポート

■ 言語上の新しい機能

  • pgc++(Linuxのみ)は、新しく g++ 4.8 と互換となるようになりました(以前のリビジョンでは、gcc 4.8 をサポートしていません)
  • pgc++ は、新しく以下の g++ 互換機能を追加しました。
    • __attribute__((used))
    • __attribute__((weak))
    • __attribute__((__constructor__(101)))
    • definition of __LP64__ for 64-bit Linux
    • definition of __gnu_linux__
  • F90ポインタに関する最適化を実施
  • Windowsのアセンブラを更新した

■ その他の機能と強化ポイント

  • CPUコードのベクトル化の強化
  • OS X における Environment Modules のサポート
  • Linuxのインストール・スクリプトにサイレントモードの追加

バグフィックス

PGI 14.6 (2014年6月)

PGI 14.4 (2014年4月)

■ PGI Accelerator の新機能と強化ポイント

  • OpenACC C++ サポートの拡張
    • C++ thisポインタサポート
    • C++ member functions
    • C++ 上での routine ディレクティブのサポート
    • data clause 内での C++ クラスメンバー配列のサポート
  • OpenACC 2.0 機能の追加
    • 深いネストループ上での collapse ループディレクティブのサポート
    • Parallel ディレクティブ内の firstprivate clause のサポート
    • data clause 内での C structs と Fortran 派生データ型のメンバー配列をサポート
    • Fortran,C/C++ の atomic ディレクティブの部分的なサポート
    • OpenACC から C/C++ CUDA-style atomics の呼び出しをサポート
    • OpenACC data clause 内で Fortran common blocks名を使用できるようにした
  • Allinea DDT を使用して、OpenACC におけるGPUサイドでのデバッグ機能
  • CUDA Fortran における CUDA 5.5 batched cuBLAS ルーチンのサポート
  • CUDA 6.0 Toolkit をバンドル
  • 新しいチュートリアルと例題の追加

■ PGI マルチコア機能追加と強化ポイント

  • Intel Sandybridge 上での計測で、PGI 14.1 に比較して OMP 2012 performance が 2% 向上した
  • インテルの最新の Haswell プロセッサの AVX2 命令をサポートした
  • C++11サポートのために新しい EDG C++ フロントエンドを採用した
  • Windowsのアセンブラを更新した

■ その他の機能と強化ポイント

  • 環境 module の包括的なサポート
  • プリビルド版の NetCDFとHDF5 を提供

27個のバグフィックス

PGI 14.3 (2014年3月)

PGI 14.2 (2014年2月)

PGI 14.1 (2014年1月)

■ PGI Accelerator OpenACC Fortran/C/C++ Compilers

  • CUDA 5.5 ならびに NVIDIA Kepler K40 GPUs をサポート
  • AMD Radeon GPUs と APUs をサポート
  • NVIDIA ならびに AMD GPU 用のネイティブな LLVM (バックエンド)コンパイル機能を追加
  • 新しい OpenACC 2.0 の一部の機能の追加(参考 OpenACC ディレクティブによるプログラミング
    • Procedure call(Routineディレクティブ)機能追加、但し、C++コンパイラにはまだ、未実装。AMD Radeon に対しては、AMD が OpenCL 2.0 をサポートするまで未実装。
    • Unstructured data lifetimes (Enter_data, Exit_data directives) 機能追加
    • Host_data directive をサポート
    • Declare ディレクティブにおける create と device_resident 節のサポート
    • 多次元の動的な割付 C/C++ 配列のサポート
    • OpenACC 2.0 API のサポート
    • NVIDIA GPUs上の CUDA Fortran atomic functions を呼び出す機能
  • OpenACC プログラムにおいて、NVIDIA と AMD GPUs の二つのターゲットを含む PGI Unified Binary を生成可能

■ PGI Accelerator CUDA Fortran

  • CUDA 5.5 ならびに NVIDIA Kepler K40 GPUs をサポート
  • Allinea DDT を使用して GPUサイドのデバッキングが可能となる(TotalView は 2014年後半対応)
  • CUDA atomic functions のフルサポート
  • ネイティブな LLVM (バックエンド)コンパイル機能

■ Multi-core x64 Optimizations

■ New Language Features and Additions

  • Fortran 2008 long integers, 再帰 I/O, intrinsic types に対する type 文, impure elemental functions, F2008 CONTIGUOUS, ISO_FORTRAN_ENV and ISO_C_BINDING を追加した
  • GNU 互換 C++ コンパイラは、そのインライン機能の向上、Boost と Trilinos の対応のための修正、OpenACC機能の堅牢化とC++11フルサポート(PGI 14.4予定)

■ PGI Visual Fortran

  • Visual Studio 2013、Windows 8.1 に対応
  • NVIDIA Tesla GPUs には、OpenACC and CUDA Fortran 対応、AMD Radeon GPUsには、OpenACC に対応した,

■ バンドルするライブラリの更新

  • MPICH 3.0.4(Linux/OS X)を新たにバンドル。PGI CDK には、その他に、Open MPI 1.7.3 と MVAPICH2 1.9 ライブラリのPGI用のビルド版を提供
  • Microsoft HPC Pack 2012 MS-MPI version 4.1 をバンドル(64-bit Windows)
  • Pre-compiled 64-bit ScaLAPACK 2.0.2 libraryをバンドル、-Mscalapack オプションを追加した(Linux/OS X 版)
  • BLAS と LAPACK 3.4.2 に基づいた LAPACK のプリコンパイル版を提供、なお、AMD ACML ライブラリのチューニングされた LAPACK も利用可能

■ 検証済み使用可能プラットフォームの追加

Red Hat Enterprise Linux 6.5、Fedora 19/20、Ubuntu 13.4/13.10、SLES 11 SP3、OpenSuSE 13.1、Windows 8.1、OS X Mavericks 等
PGI 2014 サポート OS の詳細へ

■ 例題とチュートリアルの更新

実装されたソフトの中に、EXAMPLE($PGI/{os target name}/2014/examples 配下)として、Fortran 2003, CUDA Fortran, CUDA-x86, OpenACC, OpenMP 並列化, 自動並列化、MPI 用の例題とチュートリアルを包括的に更新しました。

▶ 過去のバージョンのリリースノート