Windows C/C++ (Command)
準備: start-cmd.bat を実行します。
Step 1
1. 最初の一歩: インテル コンパイラーによりコンパイルし、実行します。実行すると、最後に計算にかかった時間 (秒) が表示されます。
icl step1\integral.c
integral.exe
2. 自動ベクトル化: このシステムのプロセッサーで最適な SIMD 拡張命令を用いるように指示します。
icl step1\integral.c /QxHost /Qdiag-enable:10382
integral.exe
3. 自動並列化: このシステムのプロセッサーの複数のコアを用いて演算処理を行うように指示します。
icl step1\integral.c /Qparallel /Qopt-report-phase:par
integral.exe
3-ex. 最適化レポートを確認します: step1\integral.c(46,9) に注目
type integral.optrpt
4. プロファイルに基づく最適化 (PGO)
4-1. プロファイル実行のためのコンパイル
icl step1\integral.c /Fe:integral-pgo /Qprof-gen
integral-pgo.exe
4-2. プロファイル結果を使うコンパイル
icl step1\integral.c /Qparallel /Qopt-report-phase:par /Qprof-use
set KMP_HW_SUBSET=1t
set OMP_PROC_BIND=true
integral.exe
4-ex. 最適化レポートを確認します: step1\integral.c(46,9) に注目
type integral.optrpt
5. 自動ベクトル化 + 自動並列化
icl step1\integral.c /QxHost /Qdiag-enable:10382 /Qparallel /Qopt-report-phase:vec,par /Qprof-use
integral.exe
Step 2
1. 複数ファイルのコンパイルと自動ベクトル化結果
icl step2\integ_func.c step2\main.c /QxHost /Qopt-report-phase:vec
integ_func.exe
1-ex. 最適化レポートを確認します: step2\main.c(47,9) に注目
type main.optrpt
2. プロシージャー間の最適化 (IPO) の適用
icl step2\integ_func.c step2\main.c /QxHost /Qopt-report-phase:vec /Qipo
integ_func.exe
2-ex. IPO 適用時の最適化レポートを確認します: step2\main.c(47,9) に注目
type ipo_out.optrpt
Windows Fortran (Command)
準備: start-cmd.bat を実行します。
Step 1
1. 最初の一歩: インテル コンパイラーによりコンパイルし、実行します。実行すると、最後に計算にかかった時間 (秒) が表示されます。
ifort step1\integral.f90
integral.exe
2. 自動ベクトル化: このシステムのプロセッサーで最適な SIMD 拡張命令を用いるように指示します。
ifort step1\integral.f90 /QxHost /Qdiag-enable:10382
integral.exe
3. 自動並列化: このシステムのプロセッサーの複数のコアを用いて演算処理を行うように指示します。
ifort step1\integral.f90 /Qparallel /Qopt-report-phase:par
integral.exe
3-ex. 最適化レポートを確認します: step1\integral.f90(26,9) に注目
type integral.optrpt
4. プロファイルに基づく最適化 (PGO)
4-1. プロファイル実行のためのコンパイル
ifort step1\integral.f90 /Fe:integral-pgo /Qprof-gen
integral-pgo.exe
4-2. プロファイル結果を使うコンパイル
ifort step1\integral.f90 /Qparallel /Qopt-report-phase:par /Qprof-use
set KMP_HW_SUBSET=1t
set OMP_PROC_BIND=true
integral.exe
4-ex. 最適化レポートを確認します: step1\integral.f90(26,9) に注目
type integral.optrpt
5. 自動ベクトル化 + 自動並列化
ifort step1\integral.f90 /QxHost /Qdiag-enable:10382 /Qparallel /Qopt-report-phase:vec,par /Qprof-use
integral.exe
Step 2
1. 複数ファイルのコンパイルと自動ベクトル化結果
ifort step2\integ_func.f90 step2\main.f90 /QxHost /Qopt-report-phase:vec
integ_func.exe
1-ex. 最適化レポートを確認します: step2\main.f90(30,9) に注目
type main.optrpt
2. プロシージャー間の最適化 (IPO) の適用
ifort step2\integ_func.f90 step2\main.f90 /QxHost /Qopt-report-phase:vec /Qipo
integ_func.exe
2-ex. IPO 適用時の最適化レポートを確認します: step2\main.f90(27,9) に注目
type ipo_out.optrpt