図形を生成する関数 (ニューラル ネットワーク モデル) があります。Torque を備えた標準クラスターで PBS を使用して、python からいくつかのパラメーター、メソッド、およびさまざまな入力 (関数の何百回もの実行を意味する) をテストしたいと考えています。
注: 私は 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 スクリプトから呼び出す関数を考えていましたが、まだわかりませんでした (decorator?)。