JupyterHub をセットアップし、pyspark カーネルを構成しました。pyspark ノートブック (ユーザー名 Jeroen の下) を開くと、Python プロセスと Java プロセスの 2 つのプロセスが追加されます。Java プロセスには 12g の仮想メモリが割り当てられます (画像を参照)。1B の数値の範囲でテスト スクリプトを実行すると、22g に増加します。複数のユーザーがこのサーバーで作業する場合、それは心配する必要がありますか? もしそうなら、どうすればJavaが大量のメモリを割り当てるのを防ぐことができますか?
質問する
578 次
1 に答える
1
仮想メモリの使用について心配する必要はありません。ここでは、予約済みメモリの方がはるかに重要です (RES
コラム)。
spark に渡されたオプションを使用して、JVM ヒープの使用量を制御でき--driver-memory
ます (jupyterhub で pyspark カーネルを使用している場合は、PYSPARK_SUBMIT_ARGS
キーの下の環境で見つけることができます)。これは、アプリケーションのメモリ制限と正確には一致しませんが (JVM には他のメモリ領域があります)、非常に近い値です。
そのため、複数のユーザーをセットアップする場合は、適切なドライバー メモリ (処理に必要な最小限のメモリ) を設定し、作業が終了したらノートブックをシャットダウンする方法をユーザーに学習させる必要があります。
于 2017-10-21T10:34:20.693 に答える