2

INTEL fortranコンパイラオプションを設定して、IA32およびX64ビットで8コアシステムの最高のパフォーマンスを得る方法を教えてください。実際、私はFortranプログラムを実行し、8コアシステムで利用可能なすべてのCPU時間を利用したいと思っています。現在、プログラムはCPU時間の13%しか使用していません。

4

2 に答える 2

1

Intel FORTRAN の自動ベクトル化とガイド付き自動並列化機能については、次のチュートリアルで学習できます: http://software.intel.com/sites/products/documentation/hpc/composerxe/en-us/start/win/tutorial_comp_for_win.pdf

線形代数、ソルバー、FFT を実行している場合、問題を Intel Math Kernel Libraries への呼び出しにマッピングすると、最良の結果が得られる可能性があります: http://software.intel.com/en-us/articles/intel-mkl/ 既にマルチスレッド化され、ベクトル化され、キャッシュが最適化されています。

メディア/信号処理を行っている場合は、問題をインテル パフォーマンス プリミティブ ライブラリの呼び出しにマップすることができます: http://software.intel.com/en-us/articles/intel-ipp/

ハッピーハッキング!

于 2010-11-22T05:10:53.987 に答える
0

私の特定のアプリケーションでは、コンパイラで /Q2 レベルの最適化を有効にするだけで、20,000 回の反復で実行される複数のループを含む計算ネットワーク モデルでif's、CPU 負荷を維持しながら計算時間を大幅に短縮するのに十分でした。 15%。同様に、最適化設定を最後のレベル (/Q3) まで上げて、あなたが求めていたこと (すべての CPU をほぼ全負荷で実行) を実行したことに気付きましたが、計算時間はまったく短縮されていません。したがって、小さな問題があり、テストするケースがいくつかあり、処理能力が唯一のボトルネックである場合は、複数の Fortran ソリューションを開いて、それらのケースを同時に実行することをお勧めします。

于 2015-02-24T04:25:55.313 に答える