Perf Impact of CMSClassUnloadingEnabled
ysr1729 at gmail.com
Tue Nov 8 10:20:46 PST 2011
Right, and this walk is done single-threaded today (perhaps it could be
without too much effort?). May be moot with the upcoming changes around perm
On Tue, Nov 8, 2011 at 7:58 AM, Jon Masamitsu <jon.masamitsu at oracle.com>wrote:
> Hotspot maintains a list of classes that are loaded in the
> Dictionary (dictionary.hpp/cpp). This list does not keep
> classes alive. After marking (when we know what classes
> are dead), we walk the list and remove dead classes.
> Hotspot does not keep information that says classes have
> not been unloaded, so the list is always walked.
> On 11/07/11 10:33, Andreas Loew wrote:
> > Hi Jon,
> > sorry, a follow-up question from my side: As it shouldn't be the most
> > normal thing even for a Java EE app to constantly dereference
> > classloaders or single classes that need to be GC'ed:
> > In how far does your statement about increased remark pauses still
> > apply in case the PermGen / set of loaded classes has stayed
> > completely constant between initial mark and remark (which should be
> > the usual case)?
> > And wouldn't there a also be a distinction between PermGen and Old Gen?
> > Many thanks & best regards,
> > Andreas
> > --
> > Andreas Loew
> > Senior Java Architect
> > Oracle Advanced Customer Services Germany
> > Am 07.11.2011 16:44, schrieb Jon Masamitsu:
> >> Doing class unloading with CMS will often increase the remark pause
> >> times
> >> and so is not on by default.
> >> On 11/5/2011 3:29 PM, Martin Hare Robertson wrote:
> >>> Hi,
> >>> I recently encountered an interesting GC issue with a Tomcat
> >>> application. I
> >>> came up with a simple repro scenario which I posted to StackOverflow:
> >>> To solve this issue I have been encouraged to use
> >>> -XX:+CMSClassUnloadingEnabled.
> >>> I currently use the following GC configuration.
> >>> -XX:+UseMembar
> >>> -XX:+UseConcMarkSweepGC
> >>> -XX:+UseParNewGC
> >>> -XX:CMSInitiatingOccupancyFraction=80
> >>> -XX:+UseCMSInitiatingOccupancyOnly
> >>> Is enabling CMSClassUnloadingEnabled likely to have a negative perf
> >>> impact?
> >>> If not, why is it disabled by default?
> >>> Thanks
> >>> Martin
> hotspot-gc-use mailing list
> hotspot-gc-use at openjdk.java.net
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the hotspot-gc-use