3

数日かけてソフトウェアを大幅に改善し、多くの不要なオブジェクトの割り当てを取り除きました。改善は劇的で、(ほとんど) 新しいオブジェクトを割り当てずにプロセスを実行できるようになりました。破棄されたばかりの何メガバイトものオブジェクトが、私の修正前に作成されました。

ここで、改善を印象的な方法で視覚化したいと思います (測定可能な影響がすべてです :)。任意のヒント?多くのインストルメンテーションに VisualVM を使用しましたが、実際にはあまり表示されません。モニターには「GC アクティビティ」と呼ばれるものが表示されますが、あまり役に立ちません。理想的には、修正前後のプロセスで作成されたすべてのオブジェクトのサイズの累積カウントを保持できるようにしたいと考えています。それを可能にするツールはありますか?

ありがとう!

4

2 に答える 2

2

GCMVを使用できます。多くの異なる冗長 GC 形式をサポートしており、比較チャートをまとめることができます。「前後」のストーリーを表示したい場合に、メモリ リークなどのためにこれを行うことがよくあります。

また、合計 GC や合計 GC 時間などの興味深い要約も表示されます。これらのケースではかなり魅力的に見えます。

于 2012-04-06T03:43:23.850 に答える
0

VisualVM には 2 つのオプションがあります。クラスごとに割り当てられたインスタンスの数を追跡するメモリ プロファイリングを使用するか、VisualVM 1.3.3 で追加された、スレッドごとに割り当てられた累積 Java ヒープ バイト数を追跡​​するためのサポートを使用できます。

于 2012-04-24T19:01:42.850 に答える