2010-02-22 129 views
3

想知道是否啓用詳細的GC會對應用程序的性能產生任何影響。Java -verbose:gc性能影響?

我的猜測並非不是真的。

我知道,啓用詳細的GC可以輸出一個公平的位數據,並想知道這是現實會對性能有什麼影響?

+0

我們可以有更多的上下文嗎?您在考慮開啓此選項的應用程序和環境是什麼類型?我建議不要在大型​​企業生產系統上開啓它。 – 2010-02-22 12:42:40

回答

5

輸出到文件/控制檯的任何內容都會導致一些I/O開銷。在每個垃圾收集事件上附加一對夫婦ms延遲肯定會對性能產生一定影響。

雖然現實地說,你的應用程序將不得不經歷其中的很多,並且在你注意到之前處於一定的負載下。沒有測試就很難說出來。

0

下面是IBM的一些性能基準。雙方表示,在他們的基準測試場景中,詳細GC的開銷是相當微不足道:

這是當然的,在IBM JVM,因此Hotspot的結果可能會有所不同。但是,與IBM JVM一樣,大部分寫入日誌的度量標準都可能是爲了優化原因而在內部進行計算的,因此唯一的額外開銷就是將已經計算的數據寫入日誌。正如WDS所說,你必須以令人難以置信的頻率進行收集,然後才能使整體性能顯着下降。