< 目次

インテル® MKL 2017 デベロッパー・ガイド

インテル® Xeon Phi™ コプロセッサー用の Intel® Optimized MP LINPACK Benchnmark の使用モード

インテル® MKL は、次のモードでインテル® Xeon Phi™ コプロセッサーをサポートしています。

ネイティブモードの詳細は、「インテル® Xeon Phi™ コプロセッサーでのインテル® MKL の使用」を参照してください。

ハイブリッド・オフロード・モードは、異なる並列化手法の使用とコプロセッサーへの計算のオフロードを組み合わせます。このモードでホスト・プロセッサーは、物理コアの総数よりも少ないコアを MPI に使用し、OpenMP* スレッドまたは POSIX* スレッドを使って、問題のチャンクをインテル® Xeon Phi™ コプロセッサーにオフロードします。

インテル® Xeon Phi™ コプロセッサーで MPI プロセスを直接実行するには、ネイティブモードを利用する必要があります。MPI プロセスをインテル® Xeon Phi™ コプロセッサーでのみ実行する場合、コプロセッサーはオフロードモードで使用されます。

多くの場合、ホストのインテル® Xeon® プロセッサーのほうが、インテル® Xeon Phi™ コプロセッサーよりもメモリーが大きくなります。このため、MPI プロセスは、コプロセッサーで実行するよりもホスト・プロセッサーで実行するほうが、より多くのメモリーを利用できます。

HPL コードはもともとホモジニアスです。つまり、各 MPI プロセスは、同様の CPU とメモリー制限の環境下で実行する必要があります。なんらかの理由で、あるノードの処理能力がほかのノードの 2 倍である場合、従来そのノードで 2 つの MPI プロセスを実行することでのみバランスをとることができました。

現在は、インテル® MKL で、ヘテロジニアスな Intel® Optimized MP LINPACK Benchmark をサポートしています。ヘテロジニアスのサポートとは、追加の作業に対応できる十分なメモリーがノードにある場合、各ノードのパフォーマンス要件に合わせたデータ配置をインテル® MKL がサポートすることを意味します。Intel® Optimized MP LINPACK Benchmark は、次のヘテロジニアスをサポートしています。

パフォーマンスを最大限に引き出すには、ホスト・プロセッサーのメモリーを増やし (コプロセッサーあたり 64GB が理想)、大きな問題と大きなブロックサイズを実行します。作業の一部はコプロセッサーにオフロードします。この方法では PCIe バスのトラフィックが増加しますが、大きな問題では十分にメリットが得られます。

ホスト・プロセッサーのメモリーが小さい場合、オフロードする代わりに、ネイティブに実行したほうが良いパフォーマンスが得られる可能性があります。

最適化に関する注意事項

インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。

注意事項の改訂 #20110804