問題タブ [ipython-parallel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ipython - ipyparallel エンジンにデータを送信中の MemoryError
私たちは Ipython.parallel (現在は ipyparallel) を気に入っています。
しかし、私を悩ませているものがあります。~1.5GB の pandas データフレームを一連のワーカーに送信すると、クラスターに多くのノードがある場合、MemoryError が発生します。エンジン(または比例した数)と同じ数のデータフレームのコピーがあるようです。これらのコピーを回避する方法はありますか?
例:
小規模なクラスタ (たとえば 30 ノード) の場合、メモリはどんどん大きくなりますが、最終的にはデータが通過し、すべて問題ありません。しかし、例えば 80 ノード (n_core エンジンではなく 1 つのエンジンのみを備えたすべての r3.4xlarge) などの大規模なクラスターの場合htop
、最大 (123GB) までのメモリの増加が報告され、次のようになります。
https://ipyparallel.readthedocs.org/en/latest/details.htmlを見た後xy.values
、「非コピー送信」だけでなく get MemoryError
.
バージョン:
- Jupyter ノートブック v.4.0.4
- パイソン 2.7.10
ipyparallel.__version__
: 4.0.2
python - IPython ipyparallel map_sync ImportError
私は初めてでipyparallel
、このパッケージを使用して、機械学習アプリケーションで並列コンピューティングを実装したいと考えています。
以下は のテストです。 func.py ファイルで名前がipyparallel
付けられた関数を定義し、add
test.py ファイルで main 関数を定義します。
func.py のコードは次のとおりです。
test.py のコードは次のとおりです。
エラーなしで実行できることがわかっているためmap
、 runmap_sync
の場合、コマンドラインは次を返します。
そして、test.py ファイルで関数を定義すると、以下map_sync
を実行できます。
結果は次のとおりです。
map_sync
他のファイルで定義された関数をどのように使用するのだろうか? そして、これらの関数をインポートする方法は? from py_file import func
では機能しませmap_sync
ん。
ipython-notebook - ローカル変数を ipyparallel クラスターに渡す最良の方法
相互に依存する 7 つの関数で構成され、13 の異なるパラメーターを必要とする ipython ノートブックでシミュレーションを実行しています。一部の関数は、1 つの関数でシミュレーション全体を実行できるように、他の関数内で呼び出されます。シミュレーションには、合計で 20,000 回を超える反復で 2 つのパラメーターを操作することが含まれます。2 つのシミュレーションを非同期で実行できます。各反復に約 1.5 秒かかるため、並列処理を調査しています。
最初に ipyparallel を試したとき、グローバル名が定義されていないというエラーが発生しました。ローカル オブジェクトがワーカーで見つからないことは理にかなっています。うさぎの穴にかなりの時間を費やすのを避けるために、すべてのワーカーに大量のオブジェクトを渡す最も簡単な方法は何でしょうか? この方法で ipyparallel を使用する場合に考慮すべき他の落とし穴はありますか?
python-3.x - 「タスク ファーミングが無効です」または IPython.parallel セッションで発生した同様のソケット関連の問題
IPython.parallel の負荷分散されたインターフェイスは優れています。これを使用して、小さなクラスター環境で複雑な科学計算を実行しました。PC で 5 ~ 10 分かかる数百の問題がクラスターに送信されました。より精力的なタスクをクラスターに送信し始めるまで、問題なく結果を取得できました。割り当てられたタスクが正常に完了したにもかかわらず、一部のエンジンが登録解除されました。「ipcontroller --ping=120000」を使用して問題を回避しましたが、IPython は「タスク ファーミングが無効になっています」と表示するようになりました。問題の原因と対処法
ちなみにクラスタではsshモードを使っています。