nAG Fortranコンパイラの最新版が約2年ぶりにリリースされました。 このリリースでは性能向上とFortran 2003の多くの機能が追加されました。
『nAG Fortranコンパイラ』 は世界で初めてFortran90コンパイラをリリースした nAG技術者グループにより開発された「Fortran90/95準拠」のコンパイラで、 プログラム診断機能が特に優れています。
Fortran2003の機能の多くもいち早く搭載しています。今回の新リリースでは Fotran 2003の機能がよりいっそう強化されています。
追加された主要なFortran 2003機能
- 無限多相‘CLASS(*)’仮引数、ポインタ、割付け変数
- 手続きポインタ
- オブジェクト結合手続き(手続きポインタ要素としても知られています)
- スカラ割付け変数
- 無指定文字長(‘LEN=:’)。スカラ割付け変数と共に、これは真の可変長文字機能を提供します。
- 初期化式中にこれまで以上の組込み関数を使用できます。これにはABS (実数/複素数), ACOS, AIMAG, AINT, ANINT, ASIN, ATAN, ATAN2, CEILING, CMPLX, COS, COSH, COUNT, DBLE, DIM (実数), EXP, EXPONENT, FLOOR, FRACTION, INDEX (BACK=引数付き), LGE, LGT, LLE, LLT, LOG, LOG10, LOGICAL, MAX (非整数), MAXLOC, MAXVAL, MERGE, MIN (非整数), MINLOC, MINVAL, MOD (実数), MODULO, NEAREST, NINT, REAL, RRSPACING, SCALE, SCAN (BACK=引数付き), SIGN (非整数), SIN, SINH, SET_EXPONENT, SPACING, SQRT, TAN, TANH, VERIFY (BACK=引数付き)を含みます。また2番目の引数が実数、または複素数のべき乗(**)も初期化式中で使用できるようになりました。
- まだ割付けられていない割付け変数への代入、あるいは誤った形状の割付け配列全体への代入操作に対し、正しい形状の変数を割り付けるようになりました(これまでは単なるエラーでした)。
- 再帰入出力。Fortran 2003標準ではただ一つの入出力文が外部装置を指定している場合に再帰入出力を許していますが、nAG Fortranコンパイラにおいては複数の外部装置に対する再帰入出力が許容されます。唯一の制限は同一の外部装置が含まれていてはならないという点です。
- ASSOCIATE構造構文
パフォーマンス向上
- 構造体構成子の構造型変数への代入に際しては可能であれば一時記憶の使用を回避します。
- 組込み関数ASSOCIATEDの2引数形式は状況によってはより高速になります。
- 組込み関数ISHFTCは大きなSHIFT=値に対して一段と高速になりました。
- 組込み関数SHAPEは状況により性能が早くなります。
- DIM=引数を指定した組込み関数SIZEは状況により性能が早くなります。
- スカラポインタの割付け、解放がより高速になりました。
- -Oinline_dealloc オプション(-O3 , -O4に対するデフォルト)が使用された場合の割付け配列の解放処理が早くなることがあります。
- メモリアロケータの性能が改善され、フラグメンテーションがわずかに軽減されます。
- マルチスレッドのプログラムにおいてそれぞれのスレッドが別個の装置に対して入出力を行うようになるため、ロック競合が低下します。
- 内部入出力に対する-thread_safe オプションに関し性能が改善されました。
- 特に非常に多くのネストされた有効域を含むモジュールに対してコンパイル速度が改善されました。
本リリースの詳細情報は nAG Fortranコンパイラ 5.2 リリースノート をご参照下さい。
nAG Fortranコンパイラ
対応プラットフォーム
対応プラットフォーム
◇ Windows(Fortran Builderとして)
◇ Linux32, Linux64(AMD64/EM64T)
◇ Itanium Linux(64bit)
◇ FreeBSD
◇ MAC OS X (PowerPC, Intel (32bit/64bit)
◇ AIX, Solaris, IRIX, HP-UX, Tru64
他
その他のIntel MAC対応製品
nAG Fortranライブラリ
nAG C ライブラリ