2011-07-05 5 views
2

例えば、次のコードは、唯一の1つのプロセスでタスクを実行します。Jugでは、多重処理モードでネストされたループを実行する方法は?

from jug import TaskGenerator 
evaluate = TaskGenerator(evaluate) 

for p0 in [1,2,3]: 
for p1 in xrange(10): 
    for p2 in xrange(10,20): 
     for p3 in [True, False]: 
      for p4 in xrange(100): 
       results.append(evaluate(p0,p1,p2,p3,p4)) 

はどこ私はプロセスの数を示す必要がありますか?感謝! ありがとう!

答えて

4

作成者jugここに。

このスクリプトを実行するには、script.pyというファイルであると仮定して、jug execute script.pyコマンド(python script.pyではなく)を実行します。

これらを複数同時に実行することもできます。あなたはUnixライクなシェルを使用している場合は、以下の2個のプロセッサを使用するために、うまく動作するはずです:

jug execute script.py & 
jug execute script.py & 

異なるプロセスは、作業を分割するためにファイルシステムを使用して相互に通信します(これはデフォルトでは、ファイルシステムを共有していないマシンのクラスタを使用する場合は、redisバックエンドを使用することもできます)。

jug status script.py 
+0

ああ、あなたはこのように意味:

あなたはまた、彼らは実行しながら、進捗状況を確認するには、次のことができます。開始されたscript.pyはすべて、指定されたパラメータ空間を共有しますか? – Matt

+0

私は私の答えを編集しました。それは今より意味をなさないでしょうか? – luispedro

+0

よ、今はっきりしています。すべてありがとう! – Matt

関連する問題