インテル® MKL 2017 デベロッパー・ガイド
HPL.dat の最も重要なパラメーターは、N、NB、P および Q です。これらのパラメーターを、ほかのパラメーターとともに指定します。
P および Q - プロセッサー・グリッドの行と列の数。
P*Q は、HPL が使用する MPI プロセスの数です。
Intel® Optimized MP LINPACK Benchmark のハイブリッド・オフロード・バージョンでは、P と Q をほぼ同じサイズにしてください。
この設定は、多くの HPL 実装で推奨される設定 (P < Q で比率を 1:4 にする) とは異なります。
NB - データ配置のブロックサイズ。
次の表は、第 2 世代インテル® Core™ プロセッサーおよび第 3 世代インテル® Core™ プロセッサーにおける NB の推奨値とインテル® Xeon Phi™ コプロセッサーの数を示しています。値は PCI Express の設定およびメインメモリーのパフォーマンスに応じて異なります。
コプロセッサーなし |
1 コプロセッサー |
2 コプロセッサー |
3 コプロセッサー |
---|---|---|---|
256 |
960 |
1024 |
1200 |
N - 問題サイズ:
ホモジニアス実行の場合、NB*LCM(P,Q) で分割可能な N を選択します (LCM は最小公倍数)。
ヘテロジニアス実行については、「ヘテロジニアスな Intel® Optimized MP LINPACK Benchmark」を参照してください。
N を大きくすると通常パフォーマンスは向上しますが、N のサイズはメモリーによって制限される点に注意してください。
その他のパラメーター。
横方向ブロードキャストのインテル® MKL BPUSH アルゴリズムを利用するには、HPL.dat の 23 行目の BCASTs パラメーターを 6 に設定します。
システムで NUMA を有効にし、各 NUMA ソケットで MPI プロセスを実行すると、通常ハイブリッド・オフロードのパフォーマンスが向上します。システムで NUMA を有効にする方法については、BIOS 設定を参照してください。HPL_MIC_DEVICE および HPL_MIC_SHAREMODE 環境変数を使用して、MPI プロセス間でインテル® Xeon Phi™ コプロセッサーを共有できます (詳細は、「ハイブリッド・オフロードの環境変数」を参照)。スクリプト runme_intel64 および runme_intel64_dynamic は、指定されたノードごとの MPI ランク数に合わせて、これらの環境変数を設定します。
最適化に関する注意事項 |
---|
インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。 注意事項の改訂 #20110804 |