FULL PRODUCT VERSION :
1.6.0_u18
FULL OS VERSION :
Redhat Enterprise Linux 4 Update 4
A DESCRIPTION OF THE PROBLEM :
When enabling the G1 garbage collector, UseLargePages ceases to have effect. This can be verified by executing the following command before and after starting the JVM:
cat /proc/meminfo | grep Huge
When the G1 garbage collector is enabled, the results of the preceding operation before and after starting the JVM are exactly the same. G1 is enabled with the following options:
-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC
Using any other garbage collector (CMS, Parallel, Serial, etc.) causes the number of Huge pages available to be reduced as expected (depending on Xmx, Xms, etc. flags).
The system in question has been running with huge pages for many months now. We updated to the latest Java 6 Update 18 in order to try G1, however this conflicts with out huge page requirements (we use heaps above 16 GB).
THE PROBLEM WAS REPRODUCIBLE WITH -Xint FLAG: Did not try
THE PROBLEM WAS REPRODUCIBLE WITH -server FLAG: Yes
REPRODUCIBILITY :
This bug can be reproduced always.