1

関連する投稿をいくつか検索しましたが、明確に答えてくれるものはありません。マルチプロセッシングを使用してジョブをマシンに分散するクラスを作成しようとしています。「ジョブ」はサブプロセスを使用するシステム コールであり、一度生成されたジョブにスクリプトが接続されたままになることは望ましくありません。Process クラスを使用してすべてが機能するようになりましたが、Pool クラスを試してみたいのですが、問題が発生しています。

私のコードはここにあります: https://gist.github.com/2627589

関連するメソッドは run_queue メソッドです。Test_pool クラスで、Runner クラスの run_queue メソッドを上書きしていることがわかります。ただし、これを実行するとエラーが発生します: PicklingError: Can't pickle : attribute lookup builtin .instancemethod failed

私の目標は、ビジー状態を維持する必要がある MAX_NUM_CORES を定義し、分散されたジョブが定義されたコアの最大数 (MAX_NUM_CORES など) を超えて使用しない限り、ジョブを継続的に送信できるようにすることです。多分私は正しいデザインパターンを使用していませんか? 提案は大歓迎です。

4

0 に答える 0