問題タブ [mpi4py]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
54 参照

python - MPI の予期しない実行

Python でコードを並列化しようとしていますが、いくつか問題があります。これはコードの一部です:

最後の行で d を呼び出すとき、プロセス 1 で定義された Survivor.movement() を呼び出すべきではありませんか? ゲームを実行すると、メイン キャラクターが動きません。しかし、どこからでも d を削除し、survivor.movement() を最後の行に配置すると、期待どおりに動作します。誰でも私を助けることができますか?

0 投票する
1 に答える
2677 参照

ipython - IPythonノートブックでmpi4pyを使用するには?

Ipythonノートブック用の8つのエンジンで実行されているipclusterがあります。したがって、次のようになります。

を与え[0, 1, 2, 3, 4, 5, 6, 7]ます。しかし、mpi4py にこれらのエンジンを表示させることができません。

を与え1ます。私は基本的な何かが欠けていると思うので、助けていただければ幸いです。

0 投票する
1 に答える
2080 参照

python - mpi4py を使用したホスト キーの検証に失敗しました

Arch Linux ARM (より具体的には Raspberry Pi クラスター上) で mpi4py (1.3.1) と openmpi (1.8.6-1) を使用して MPI アプリケーションを構築しています。3 つのノード (4 つのプロセス) でプログラムを正常に実行しました。新しいノードを追加しようとすると、次のようになります。

面白いことに、同じノードを使用しているため、ssh キーは問題ありません (ホスト ファイルの任意のエントリを削除し、新しいノードを追加すると機能するので、問題はないと確信しています。 ssh の設定が間違っている (5 つのプロセスを使用している場合にのみ発生します)。

これは何らかのライブラリのバグでしょうか?

ここに私のホストファイルがあります

前もって感謝します!

0 投票する
1 に答える
1264 参照

python - mpi4py と並行してテキスト ファイルを分析する

入力タブで区切られたテキスト ファイルがあります。

プレーンなPythonで次のように分析します。

を使用して同じ操作を並行して実行するにはどうすればよいmpi4pyですか? でこれを実装し始めましたが、リスト要素をノード数と同じ長さにする必要がscatterあるため、すぐには機能しません。scatter

0 投票する
1 に答える
280 参照

python - インストールせずに mpi4py (または任意の python モジュール) を使用する

モジュールを使用numpyして記述した並列コードがいくつかあります。mpi4py今まではラップトップで実行していましたが、大学のコンピューティング クラスターを使用して、より大きな問題サイズに取り組みたいと考えています。問題は、mpi4py がインストールされていないことです。必要なファイルをクラスター内のホーム ディレクトリにコピーしてモジュールを使用する方法はありますか?

  • ルートアクセスなしでインストールする方法をいくつか試しましたが、うまくいきませんでした。そのため、モジュールをリモートマシンにコピーするだけでモジュールを使用する方法を探しています
  • ターミナルから ssh を使用してクラスターにアクセスします
0 投票する
1 に答える
11062 参照

python - 基本的な mpi4py コードの実行方法

0 投票する
1 に答える
845 参照

python - 特定のランクへの MPI Bcast または Scatter

私はいくつかのデータの配列を持っています。私がやろうとしていたことは次のようなものです:

ランク 0 を使用して、データを 50 ノードにブロードキャストします。各ノードには 1 つの mpi プロセスがあり、そのプロセスで 16 コアを使用できます。次に、各 mpi プロセスが python multiprocessing を呼び出します。いくつかの計算が行われた後、mpi プロセスは multiprocessing で計算されたデータを保存します。次に、mpi プロセスはいくつかの変数を変更し、マルチプロセッシングを再度実行します。等。

そのため、ノードはすべてのデータを受信する最初の起動を除いて、相互に通信する必要はありません。

マルチプロセッシングはうまく機能していません。だから今、私はすべてのMPIを使いたいです。

bcast または scatter の MPI ランクを参照する整数の配列をどのように使用できますか (または使用できませんか)。たとえば、ランク 1 ~ 1000 の場合、ノードには 12 個のコアがあります。したがって、12 ランクごとにデータをブロードキャストしたいと考えています。次に、12番目のランクごとに、データを12 + 1から12 + 12ランクに分散させます。

これには、最初の bcast が totalrank/12 と通信する必要があり、次に各ランクが同じノードのランクにデータを送信し、結果を収集して保存し、同じノードのランクにさらにデータを送信する必要があります。