ベンチマークを開始するには、以下の操作を行います。
クラスター・ファイル・システムでは、すべてのノードがアクセスできるディレクトリーにIntel® Optimized HPCG パッケージを展開します。パッケージに含まれている readme.txt ファイルに示されているライセンスを承諾します。
hpcg/hpcg_cpu/bin ディレクトリーに移動します。
システムに最も適したベンチマークの事前ビルドバージョンを使用します。または、QUICKSTART の説明にしたがって、MPI 実装向けのベンチマークのバージョンをビルドします。
インテル® oneAPI マス・カーネル・ライブラリー (インテル® oneMKL)、インテル® DPC++/C++ コンパイラー、およびインテル® MPI ランタイム環境が適切に設定されていることを確認します。これは、各製品に同梱の vars.sh スクリプトを使用して確認できます。
選択したベンチマークのバージョンを実行します。
第 3 世代インテル® Xeon® スケーラブル・サーバー (以前のコード名 Ice Lake) までのインテル® Xeon® プロセッサー・ファミリーの場合、インテル® AVX2 および AVX512 最適化バージョンは、同時マルチスレッド (SMT) スレッドをスキップして、ソケットあたり 1 つの MPI プロセスとコアあたり 1 つの OpenMP* スレッドで最高のパフォーマンスを発揮します。システムでハイパースレッディングが有効になっている場合、アフィニティーを KMP_AFFINITY=granularity=fine,compact,1,0 に設定することを推奨します。例えば、ノードごとに 2 つのインテル® Xeon® プロセッサー Platinum 8380 プロセッサーを搭載した 128 ノードのクラスターの場合、次のように実行します。
#> export OMP_NUM_THREADS=20; export KMP_AFFINITY=granularity=fine,compact,1,0; mpiexec.hydra --genvall -n 256 --ppn 2 -f ${nodefile} ./bin/xhpcg_avx512 --nx=192 --ny=192 --nz=192 --run-real-ref=1
第 4 世代インテル® Xeon® スケーラブル・サーバー以降のインテル® Xeon® スケーラブル・プロセッサー・ファミリーの場合、AVX512 最適化バージョンは、同時マルチスレッド (SMT) スレッドを使用して、NUMA ノードあたり (または各プロセッサー ソケットのダイあたり) 1 つの MPI プロセスとコアあたり 2 つの OpenMP* スレッドで最適なパフォーマンスを発揮することがあります。アフィニティーを KMP_AFFINITY=granularity=fine,compact に設定することを推奨します。例えば、ノードごとに 2 つのインテル® Xeon® プロセッサー Platinum 8480 プロセッサーを搭載した 128 ノードのクラスターの場合、次のように実行します。
#> export OMP_NUM_THREADS=28; export KMP_AFFINITY=granularity=fine,compact; mpiexec.hydra --genvall -n 1024 --ppn 8 -f ${nodefile} ./bin/xhpcg_avx512 --nx=192 --ny=192 --nz=192 --run-real-ref=1
ベンチマークが実行を完了したら (通常は数分かかります)、現在のディレクトリーにある YAML ファイルを調べて結果を確認します。ベンチマーク・テストを行ったシステムの性能評価は、ファイルの最後のセクションに記述されています。
HPCG の結果は GFLOPS [GFLOP/s] 評価です。
製品および性能に関する情報 |
|---|
性能は、使用状況、構成、およびその他の要因によって異なります。詳細については、www.Intel.com/PerformanceIndex (英語) をご覧ください。 改訂 #20201201 |