0

JupyterHub をセットアップし、pyspark カーネルを構成しました。pyspark ノートブック (ユーザー名 Jeroen の下) を開くと、Python プロセスと Java プロセスの 2 つのプロセスが追加されます。Java プロセスには 12g の仮想メモリが割り当てられます (画像を参照)。1B の数値の範囲でテスト スクリプトを実行すると、22g に増加します。複数のユーザーがこのサーバーで作業する場合、それは心配する必要がありますか? もしそうなら、どうすればJavaが大量のメモリを割り当てるのを防ぐことができますか?

ここに画像の説明を入力

4

1 に答える 1

1

仮想メモリの使用について心配する必要はありません。ここでは、予約済みメモリの方がはるかに重要です (RESコラム)。

spark に渡されたオプションを使用して、JVM ヒープの使用量を制御でき--driver-memoryます (jupyterhub で pyspark カーネルを使用している場合は、PYSPARK_SUBMIT_ARGSキーの下の環境で見つけることができます)。これは、アプリケーションのメモリ制限と正確には一致しませんが (JVM には他のメモリ領域があります)、非常に近い値です。

そのため、複数のユーザーをセットアップする場合は、適切なドライバー メモリ (処理に必要な最小限のメモリ) を設定し、作業が終了したらノートブックをシャットダウンする方法をユーザーに学習させる必要があります。

于 2017-10-21T10:34:20.693 に答える