HOME > ソフトウェアパッケージ > 数式処理/開発環境/ライブラリ > Absoft Pro Fortran (アブソフト プロ フォートラン) > 製品概要 > Fortran コンパイラテクノロジー
Absoft Pro Fortran (アブソフト プロ フォートラン)
実行時の高速性と並列処理対応のFortranコンパイラ

Fortran コンパイラテクノロジー

Absoft Pro Fortran コンパイラは、高度な最適化と高度な拡張がなされた Fortran 95 コンパイラです。FORTRAN 77 のフルサポートと、F2003 および F2008 の機能が含まれます。Cray ポインタや VAX 変数のための出力フォーマットといった一般的なワークステーション拡張仕様にはすべて対応しています。並列化とベクトルの高度な最適化と AVX/SSE を使えば、アプリケーションの持つパフォーマンスを最大限引き出すことができます。

 

SMP (Symmetric Multi-processing:対称型マルチプロセッシング)

マルチスレッディング、ハイパフォーマンスなパラレルオプティマイザー、データの完全化、プロファイルに基づく最適化(PGO)、IPO、および、高度な最適化を自動的に実行することができます。同梱される数値計算ライブラリと組み合わせて使えば、シングルでもマルチコアシステムでもアプリケーションのパフォーマンスを最大化する最適なソリューションが実現できます。コンパイラでは、OpenMP 3.0 命令とランタイム環境もサポートされます。

自動ベクトル化と自動並列化により実行時間が大幅に短縮します。
’短いほど速い)

x86 & x64 プロセッサの自動ベクトル化

Pro Fortran コンパイラには、自動ベクトル化機能 (Auto-Vectorization) が用意されています。複数の演算を同時に実行するコードは、SIMD 命令を利用して再構築されます。この動作は、プログラマによる指示がなくても自動的に実行されます。自動ベクトル化は、とくにループで威力を発揮しますので、そのようなケースにおいてはスピードの向上を期待できます。

 

OpenMP 3.1対応のパラレルプログラミング

OpenMP は、高度なパラレルプログラミングへのアプローチをベースとした業界標準の命令です。Pro Fortran 17.0 コンパイラは、Windows,、OS X、Linux で OpenMP 3.1 を実装しています。

 

先進のコンパイラテクノロジー

Pro Fortran は、高度なコンパイラ技術を使用して、多数の最適化技術を実装します。これらの技術を個別にあるいは組み合わせて使うことで、数値的に厳密なアルゴリズムにおいても精度を保持しつつ最適なパフォーマンスを実現させることができます。

  • Loop Nest 最適化:ループ融合、プリフェッチ指定、ベクトル化、など。
  • Global Scalar 最適化:エイリアス分析、コピー伝搬、など。
  • Local Procedure 最適化:ループのアンロール、IF 変換など。
  • プロシージャー間分析:関数のインライン化、プロシージャー間の伝搬など。
  • コード生成最適化:ピープホール最適化、命令スケジューリングなど。
並列化が行われなかった Loop 文とその理由の表示例
並列化に成功した Loop 文の行

 

サポートされる拡張と機能

Pro Fortran コンパイラには、Fortran 95 の完全サポートに加え、ワークステーション用 Fortran コンパイラや F2003 および F2008 標準に由来する多数の拡張が実装されています。

  • VAX Fortran 拡張
  • F2003 および F2008 機能
  • ワークステーション拡張
  • Cray ポインタ
  • UNIX Fortran 互換ライブラリ

 

関連情報