問題タブ [parallel-python]

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 に答える
245 参照

python - 特定の/必要な値の並列pythonコードを制限する方法

以下のコードを実行するために並列 Python を使用しています。誰でもコードを修正できますか? これにより、入力リストの値が 20 を超えると「SORRY」が出力されます。これは、20 を超える値に対しても機能します。

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

python - パッケージ内の並列pythonおよびメソッドで「ImportError: No module named」を取得する

いくつかの分散ベンチマークを実行するために、並列 python を使用しようとしています (基本的に、中央サーバーから一連のマシンでいくつかのコードを調整して実行します)。機能を別のパッケージに移動するまで、私が持っていたコードは完全に正常に機能していました。それ以来、私は取得し続けImportError: No module named some.module.pp_testます。

私の質問は実際には 2 つあります。誰かが でこの問題に遭遇したppことがありますか?もしそうなら、どうすれば解決できますか? dill( )を使用してみimport dillましたが、役に立ちませんでした。また、追加のインフラストラクチャを必要としない、parallelpython の適切な代替品はありますか?

私が得る正確なエラーは次のとおりです。

コードは次のように構成されています。

は次のtest.pyように実装されます。

ながらpp_test.py:

0 投票する
2 に答える
349 参照

python - 並列 Python: 4 スレッドは 2 スレッドと同じ速度

複数のコアで計算量の多いコードを実行するためにParallel Pythonを使用しています。2 コアと 4 スレッドのi7-4600Mプロセッサを使用しています。

興味深いことに、2 つまたは 4 つのスレッドを使用すると、計算にほぼ同じ時間がかかります。この現象を示す小さなコード例を書きました。

プログラムの実行とCPU使用率の短いビデオを次に示します。しかし、それはわずかに高速です。2 つのスレッドを使用すると 1.8 倍のスピードアップが得られ、3 つのスレッドを使用すると 1.9 倍のスピードアップが得られ、4 つのスレッドを使用すると 2 倍のスピードアップが得られます。

コードが速すぎる場合は、n = 10またはを使用しますn = 11。しかし、注意してください、複雑さは6^n. したがってn = 10、 の 6 倍の時間がかかりn = 9ます。

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

python - 並列で結果を取得するのが遅すぎる python (pp)

4 コアのラップトップでシリアル並列処理を実行するために、並列 python (pp) パッケージを使用しました。以下は、ジョブを実行するために使用されるスクリプトの簡単な要約です。並列 Python オブジェクトを初期化した後、タスクを 4 つのジョブに分割し、それらをリストに取得しました。

私が気付いたのは、for ループのパフォーマンスはかなり高速 (数秒以内) でしたが、取得プロセス (results = [job() for job in jobs]) に時間がかかりすぎたことです (約 10 分)。

誰かがこれがなぜなのかを説明し、この問題を回避する方法を推奨できますか? ありがとうございました。

0 投票する
2 に答える
760 参照

python - Pythonで単一プログラム複数データ(spmd)を実装する方法

マルチプロセッシングのドキュメントを読みました。Pythonで、タスクを異なるCPUコアに割り当てることができることがわかりました。次のコードを (最初に) 並列で実行するのが好きです。

今、私は出力を1 2 3、次に1 ....6として取得します。しかし、私は 1 1 2 2 として動作する必要があります。つまり、proc1 と proc2 を並行して (次々にではなく) 実行したいのです。

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

python - 並列pythonでプロセス間でセマフォオブジェクトを共有する際の問題

子プロセスにキューを渡したときに次のエラーが発生しています。'継承による' % type(self).__name__ RuntimeError: キュー オブジェクトは、継承によるプロセス間でのみ共有する必要があります

マルチプロセッシング ライブラリを使用しても問題は見られませんでした