MPI では、起動後に新しいノードを追加できますか? たとえば、既に並列 MPI アプリケーションを実行している 2 台のコンピューターがあります。このアプリケーションの別のインスタンスを 3 台目のコンピューターで起動し、それを既存のコミュニケーターに追加します。すべてのコンピューターはローカル ネットワーク内にあります。
1307 次
2 に答える
2
いいえ、現在、実行中の MPI アプリケーションに新しいノードを追加することはできません。MPI は、プログラムの開始時にノードの総数を知るように設計されています。
ダウンしたノードを処理する作業が (例えばMPI-3で) 行われています。障害のあるノードを元に戻すことができれば、新しいノードを追加できるかもしれませんが、それが私が考えることができる最も近いものです。MPI フォールト トレランスへのアプローチの詳細については、この回答を参照してください。
于 2011-08-12T16:34:58.750 に答える
1
MPI2 プログラムが新しいランクを生成する可能性があります。関数はMPI_Comm_spawnで、新しい MPI コミュニケーターで子を開始します。つまり、新しいランクには、以前に実行されていたランクとは異なる MPI_COMM_WORLD があります。ただし、現在実行中のすべてのランクを含む新しいコミュニケーターを作成できるはずです。
于 2011-09-22T02:09:45.377 に答える