私がやりたいことは次のとおりです。
1 つのサーバー プロセスと複数のクライアント プロセスの間に、クライアント サーバー型の関係を持たせたいと考えています。しかし、私の問題は、これらのクライアント プロセスが異なるターミナル ウィンドウで実行され、標準入力が必要になることです。したがって、同じmpirun
呼び出しで MPI プログラムを実行しても、次のようにはなりません。
mpirun -np 2 --stdin 1 ./server : -np 3 ./client
この例では、標準入力も 1 つのプロセスにのみ送られますが、これはもちろん私にとってもう 1 つの欠点です。
最後のポイントは、実行中のサーバー プロセスと通信できる新しいクライアント プロセスをいつでも作成できるようにしたいということです。
では、これらを達成するには、どのようなアプローチに従う必要があるのでしょうか? 私は数日間検索してきましたが、別のチュートリアルを読むたびに混乱するだけです.
必要に応じて背景情報: Ubuntu 12.04 で実行し、Boost MPI を使用しています。それでも、プラットフォーム/MPI の実装に関する提案は大歓迎です。