menu

ログイン・コンパイル

ログイン

接続ホスト名       uv

% ssh uv -l <user ID>

 

コンパイル

コマンド

 

ifort [ options ] program.f (fortran)
icc [ options ] program.c (C )
icpc [ options ] program.cpp (C++)

 

最適化オプション

オプション

動作内容

-O0

すべての最適化を無効にします。

-O1

保守的な最適化を行います。

-O2

ソフトウェアパイプラインによる最適化を行います。多くの場合有効です。
(デフォルト)

-O3

積極的な最適化を行います。-O2の最適化に加えて、ループの交換やデータプリフェッチを行います。

-fast

-O3、-ipo、-staticを有効にするマクロオプションです。

並列化オプション

OpenMP

オプション

内容

-qopenmp

プログラム中のOpenMP指示行を有効にします.


自動並列化

オプション

内容

-parallel

自動並列化を行います.

-par-report[0|1|2|3]

自動並列化メッセージを出力します.
 report0: メッセージを出力しません.
 report1: (デフォルト)並列化されたループを表示します.
 report2:並列化されたループとされていないループを表示します.
 report3:並列化不可要因(依存関係)も表示

-par-threshold[n]

自動並列化のしきい値(確信度)を設定(nは0から100まで)


MPI

オプション

内容

-lmpi

mpiライブラリにリンクし,コンパイルします.

*すべてのオプションの最後に記述する必要があります.
% icc –O3 -o prog.out prog.c –lmpi

 

ライブラリ・ツールの利用

Intelが提供する科学技術計算ライブラリであるMKLをご利用頂けます.

  • BLAS 基本的な線形計算
  • LAPACK 密行列計算パッケージ
  • FFT 一次元、二次元FFT
  • DFT 離散フーリエ変換
  • VML ベクトル化数学関数

利用方法:

コンパイル時にライブラリをリンクしてください.シリアル版:-lmkl_scalapack_lp64 -lmkl_blacs_sgimpt_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core example1.f -lmpi

or
-lmkl_scalapack_lp64 -lmkl_blacs_sgimpt_lp64 -mkl=sequential example1.f –lmpi

スレッド版:
-lmkl_scalapack_lp64 -lmkl_blacs_sgimpt_lp64
-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 example1.f -lmpi

or

-lmkl_scalapack_lp64 -lmkl_blacs_sgimpt_lp64 -mkl=parallel example1.f -lmpi