我有一個產生數字的函數(神經網絡模型)。我希望使用PBS在帶有Torque的標準集羣上測試幾個參數,方法和不同的輸入(意味着數百次函數運行)。「尷尬平行」編程使用羣集上的python和PBS
注意:我嘗試了parallelpython,ipython等,並且從來沒有完全滿意,因爲我想要簡單一些。該集羣處於一個我無法改變的給定配置中,這樣一個集成python + qsub的解決方案肯定會使社區受益。
爲了簡化問題,我有一個簡單的函數,例如:
import myModule
def model(input, a= 1., N=100):
do_lots_number_crunching(input, a,N)
pylab.savefig('figure_' + input.name + '_' + str(a) + '_' + str(N) + '.png')
input
哪裏是表示輸入的物體,input.name
是一個字符串,和do_lots_number_crunching
可能持續小時。
我的問題是:是否有改造類似的參數,如
for a in pylab.linspace(0., 1., 100):
model(input, a)
成「東西」,將推出一個PBS腳本每次調用model
功能的掃描以正確的方式?
#PBS -l ncpus=1
#PBS -l mem=i1000mb
#PBS -l cput=24:00:00
#PBS -V
cd /data/work/
python experiment_model.py
我在想一個函數,將包括PBS模板,並從Python腳本調用它,但不是可能尚未弄明白的(裝飾?)。