簡體   English   中英

GC堆大小和程序內存開銷

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM