を使用してクラスターをセットアップしました
ipcluster start --n=8
次に、を使用してアクセスしました
from IPython.parallel import Client
c=Client()
dview=c[:]
e=[i for i in c]
時間がかかるスレーブノード(e [0] -e [7])でプロセスを実行しているので、進行状況レポートをマスターに送信して、プロセスがどこまで進んでいるかを監視できるようにします。それは。
これを行うには2つの方法が考えられますが、質問ページを何時間もトロールしているにもかかわらず、これまでのところどちらも実装できていません。
ノードがプロンプトなしでデータをマスターにプッシュバックするようにします。つまり、ノードで実行される長いプロセス内で、定期的に進行状況をマスターに渡す関数を実装します。
または、ノードの標準出力をマスターの標準出力にリダイレクトしてから、印刷を使用して進行状況を追跡することもできます。これは私がこれまで取り組んできたものです。各ノードには独自のstdoutがあるため、リモートで実行した場合、printは何も実行しません。sys.stdoutをノードにプッシュしようとしましたが、これで閉じます。
これをやりたいのは私だけだとは信じられないので、とてもシンプルなものが欠けているのかもしれません。ipythonを使用してリモートで発生する長いプロセスを追跡するにはどうすればよいですか?