1

おそらく任意のjarファイルをロードして統計モデルを実行できるプラットフォームをまとめています。現在直面している問題は、一部のモデルが大きすぎてプラットフォームに収まらないため、メモリ不足エラーが発生することです。これについて研究が行われていることは知っていますが、もう見つけることができません。本質的に、グーグルアプリエンジンはこれをどのように行うのですか?ディスクベースのヒープスペースについて聞いたことがある人はいますか?

4

4 に答える 4

1

現実的に可能な限りヒープを拡張したと思います(物理メモリ、プロセッサアーキテクチャ、JVM、OSの制約を考慮して)。

さらに、その答えは、私が知っているJVMにはディスクベースのヒープスペースを実装していないということです。しかし、それは完全にばかげた考えではありません。かつて、オブジェクトがメモリと永続ストアの間で透過的に移動する「直交永続」の問題に取り組んでいる学者のコミュニティがありました。残念ながら、このテクノロジーを困難にするいくつかの根本的な問題がありました。(たとえば、永続ストアをガベージコレクションし、マルチスレッドアプリケーションで論理的に一貫性のあるチェックポイントを取得し、コードの変更に対処します。)とにかく、結果として、研究分野は静かになりました。

于 2010-07-28T08:27:13.803 に答える
1

ディスクベースのヒープスペースは簡単です。これは一般に仮想メモリと呼ばれ、データをディスクからメモリに移動したり、元に戻したりするプロセスはスワッピングと呼ばれます。過去30年間に設計されたOSならどれでもそれを行うことができます。ヒープだけでなく、スタックやプログラムメモリ自体にも機能します。ただし、非常に低速であり、最近のメモリ価格では不要なことがよくあります。

于 2010-07-28T07:52:33.053 に答える
0

コマンドラインスイッチを使用して、ヒープスペースを増やすことができます(通常は最大2GB)。

それでも不十分な場合は、アプリのメモリ使用量を慎重に調整する必要があります。これには、その設計に関する詳細情報が必要になります。

于 2010-07-28T07:47:56.573 に答える
0

これらのパラメーターを使用して、ヒープサイズを指定できます

java -Xms1024m -Xmx2048m

最初のサイズは初期サイズで、2番目のサイズは最大サイズです。このヒープサイズをサポートするRAMがない場合、OSはこのメモリサイズに対応するために自動的にページネーション/スワップを実行します。もちろん、それは明らかに遅くなります。

于 2010-07-28T07:56:22.810 に答える