runhprofの出力に興味がありましたか?私は主に記憶の部分に関心があります。同じクラスのエントリが複数あるようです。なぜそうなるのでしょうか。
特定のクラス(そのクラスのインスタンス)がメモリ内で占めるメモリ量をhprofに出力させる方法はありますか?クラスごとに1つの値。
また、出力を分析するために「帽子」のほかにどのツールを使用しますか?
jvmargを使用してjavaコマンドを実行しました。
-Xrunhprof:heap = sites、depth = 4、format = a、file = prof / hprof_dump.txt
これが出力の簡単な抜粋です。一部のクラスは、出力に複数回リストされます。
SITES BEGIN(ライブバイト順)2009年7月28日火曜日19:33:41 割り当てられたスタッククラスのライブの割合 ランク自己累積バイトobjsバイトobjsトレース名 1 29.75%29.75%700080 43755 576000016 36000001 307483 java.lang.Double 2 7.13%36.88%167840 5245 370432 11576 300993 clojure.lang.PersistentHashMap $ LeafNode 3 2.09%38.98%49296 2054 60048 2502 301295clojure.lang.Symbol 4 2.09%41.07%49200 3 49200 3 301071 char [] 5 1.33%42.40%31344 1306 68088 2837 300998 clojure.lang.PersistentHashMap $ BitmapIndexedNode 6 1.10%43.50%25800 645 25800 645 301050 clojure.lang.Var 7 1.05%44.54%24624 3 246243301069バイト[] 8 0.86%45.40%20184 841 49608 2067 301003 clojure.lang.PersistentHashMap $ INode [] 9 0.78%46.18%18304 572 58720 1835 301308 clojure.lang.PersistentList 10 0.75%46.93%17568 549 17568 549 308832 java.lang.String [] 11 0.70%47.62%16416 2 164162301036バイト[]