What are the default settings for the concurrent low pause collector?
The default heap size for the concurrent low pause collector is the same as for the default collector. The other parameters are set a described below. These setting have been shown to work well for an application that has mostly very short lived data plus some data that is very long lived. Some of the options require a computation which is enclosed in angle brackets (<>), of which two depend on the number of cpus on the machine (#cpus.) # enable the concurrent low pause collector -XX:+UseConcMarkSweepGC # use parallel threads -XX:+UseParNewGC -XX:ParallelGCThreads=<#cpus < 8 ? #cpus : 3 + ((5 * #cpus) / 8) > -XX:+CMSParallelRemarkEnabled # size young generation for short pauses -XX:NewSize=4m -XX:MaxNewSize=< 4m * ParallelGCThreads > # promote all live young generation objects -XX:MaxTenuringThreshold=0 -XX:SurvivorRatio=1024 It is also recommended that a heap size be used that is 20-30% larger than that which would be used with the default collector.