web-dev-qa-db-ja.com

最高のLINPACK結果を取得し、Top500を征服する方法は?

大規模な場合LinuxHPCクラスター数百/数千のノード。 あなたのベストプラクティス可能な限り最高のものを取得するために LINPACKベンチマーク[〜#〜] hpl [〜#〜] )結果から- 送信Top500スーパーコンピューターリスト

ここで私がどのような答えをいただければ幸いでしょうか。いくつかのサブ質問(リンク付き)があります。

  • ハウツー パラメータを調整NNBPQ、メモリアライメントなど) HPL.datファイル(可能な各順列を試すのにあまり時間をかけずに-特に大きな問題サイズNで)?
  • Top5送信ルール注意すべき点はありますか?何が許可され、何が許可されないのですか?
  • どの [〜#〜] mpi [〜#〜] 製品、どのバージョンですか?それは違いを生みますか?
  • MPIマシンファイル内の特別なホストオーダー
  • CPUピン留めを使用していますか?
  • interconnectをどのように構成しますか?どの相互接続?
  • どの [〜#〜] blas [〜#〜] パッケージをどのCPUモデルに使用しますか? ( Intel MKLAMD ACMLGotoBLAS2 など)
  • どのように大規模な実行の準備(すべてのノードで)?ノードのサブセットでの小さな実行から始めて、スケールアップしますか? すべてのノードで大きな実行でLINPACKを実行する必要が本当にありますか(または外挿が許可されていますか)?
  • 最新のIntel/AMD CPUをどのように最適化しますか? ハイパースレッディング[〜#〜] numa [〜#〜]
  • ソフトウェアスタックを再コンパイルするまたは プリコンパイルされたバイナリ を使用する価値はありますか?どの設定ですか?どのコンパイラ最適化、どのコンパイラ? (プロファイルベースのコンパイルはどうですか?)
  • 限られた時間ベンチマークを実行するだけで最良の結果を得るにはどうすればよいですか? (巨大なクラスターを永久にブロックできます)
  • どのように個々のノードを準備する(システムデーモンを停止する、メモリを解放するなど)?
  • ハードウェア障害(大規模な実行を台無しにする)にどのように対処しますか?
  • このトピックについて必読のドキュメントまたはWebサイトはありますか?例えば。現在のTop500システムのいくつかの背景ストーリーと、それらがどのようにLINPACKベンチマークを実行したかについてお聞きしたいと思います。

答えを制限したくないので、意図的に具体的なハードウェアの詳細に言及したり、ハードウェアの推奨事項について話し合ったりしたくない。ただし、ヒントなどを自由に言及してください。特定のCPUモデル用。

3
knweiss

このツールを試してみると役立つかもしれません。いくつかの重要なHPLパラメーターの調整された値が提案され、クラスターでHPLを実行するためのステップバイステップのハウツーがあります。このツールは、システムの仕様に応じて、TOP500リストでのランクも推定します。

http://hpl-calculator.sourceforge.net

お役に立てば幸いです。

1
superbeast