這是我第一次嘗試使用IPython.parallel
,請耐心等待。如何將IPython.parallel用於具有多個輸入的函數?
我看這個問題 Parfor for Python 時遇到了問題實現一個簡單的例子如下:
import gmpy2 as gm
import numpy as np
from IPython.parallel import Client
rc = Client()
lview = rc.load_balanced_view()
lview.block = True
a = 1
def L2(ii,jj):
out = []
out.append(gm.fac(ii+jj+a))
return out
Nloop = 100
ii = range(Nloop)
jj = range(Nloop)
R2 = lview.map(L2, zip(ii, jj))
的問題,我已經是:
a
在循環之外定義,我認爲我需要做一些類似「推」的事情,但有點困惑。我需要「拉」後?- 函數需要兩個參數,我不知道如何正確傳遞它們。我嘗試了諸如
zip(ii,jj)
之類的東西,但遇到了一些錯誤。 - 另外,我假設我使用隨機庫
gmpy2
不應該影響的事實。它是否正確?我需要爲此做特別的事嗎?
理想情況下,我想你的幫助,所以這個簡單的例子代碼運行無錯誤。
如果您認爲在#2發佈我失敗的嘗試會讓我知道。我在#1的黑暗中。