4

複数のセルを含む IPython ノートブックがあり、いくつかのパラメーター (ノートブックのセル内で定義されている) の違いだけで、複数回並行して実行したいと考えています。それを行う最も簡単な方法は何ですか?

12 コアのワークステーションがあります。ノートブックを実行すると、コアの 1 つだけが使用されます。他のコアを使用して、まったく同じノートブックを実行したいのですが、いくつかのパラメーターを変更したいと考えています。出来ますか?

どうもありがとうございました

4

1 に答える 1

0

実際、私はそれを行う方法を見つけました。

import multiprocessing
list_of_variables=something #a 2D numpy array with all your combinations of variable values, 
             #each row has a different combination of parameter values
number_of_combinations=shape(list_of_variables)[0] #number of rows
def notebook(i):
    variables=list_of_variables[i,:]
    #all your code here
pool = multiprocessing.Pool(processes=n)  # Create a pool with n workers.
pool.map(notebook,range(number_of_combinations)) 
pool.close()
pool.join()

上記のコードのノートブックは、入力として数値を受け取り、この反復の変数値を取得し、すべての元のセルを実行する Python 関数です。

于 2014-01-24T18:19:45.980 に答える