[英]GC heap sizing and program memory overhead
我正在試圖弄清楚我的應用程序發生了什么。
問題:
GC調用並沒有盡可能多地減少未使用的堆大小,但它應該使用串行GC(或UseParNewGC)和激烈的堆比率。
程序的內存使用總是比當前使用和未使用的堆大很多,在我看來,即使包含其他JVM內存+堆也太多了
使用的命令行:
java -XX:+UseSerialGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10 -Xmx2500M -cp XXXXXX.jar xxxx.xxxx.xxxx
pause
嘗試使用UseParNewGC,結果相同
系統:Win7 SP1 4GB RAM + 4GB交換文件2.99GHZ Java 1.7 + JDK 1.7
請參閱圖片以使事情更加清晰: http : //i.stack.imgur.com/i3sxw.jpg
而不是設置自由比率,嘗試將New Generation
設置為一個允許短期對象死亡的大小。 試圖盡可能少地向Old Generation
推廣。
請記住,大型Young Generation
變成了大型系列。
然后將max Old Generation
設置為一個不會花費太長時間來完整GC
的大小,但不會經常運行它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.