RFR: 8015107: NPG: Use consistent naming for metaspace concepts
coleen.phillimore at oracle.com
Fri Sep 6 04:40:46 PDT 2013
Sorry for the delay reviewing this. It looks good.
On 9/6/2013 3:18 AM, Erik Helin wrote:
> On 2013-09-05, Mikael Gerdin wrote:
>> On 2013-09-04 19:36, Erik Helin wrote:
>>> Hi all,
>>> this patch changes the name of two flags:
>>> - -XX:+UseCompressedKlassPointers becomes
>>> -XX:+UseCompressedClassPointers (note the 'K' instead of the 'C')
>>> - -XX:ClassMetaspaceSize becomes -XX:CompressedClassSpaceSize
>>> These two flags were introduced when metaspace was merged into hs25.
>>> To use a smaller size for the Java object headers, the pointer in the
>>> object header that points to the Klass instance for the object can be 32
>>> bits on a 64-bit system. Such pointers has been called compressed klass
>>> pointers. This is the same concept as compressed oops.
>>> For the current implementation of compressed class pointers to work, the
>>> Klass instances need to be placed in a continuous virtual memory space.
>>> This virtual memory space was called ClassMetaspace but this patch
>>> introduces the name CompressedClassSpace to emphasize that the concept
>>> is closely related to compressed klass pointers.
>>> The 'K' in the CompressedKlassPointers and CompressedClassSpace was
>>> changed to a 'C' since the C++ class Klass is an implementation detail
>>> that we do not want to expose to the users.
>>> I've also added a check in Arguments::parse that checks if the user has
>>> set CompressedClassSpaceSize when compressed class pointers
>>> are _not_ used. If this is the case, then the VM will print a warning. I've
>>> also added a test that verifies this actually happens.
>>> The change touches a lot of files, but the change in each file is very
>> Thanks for taking care of this.
>> Change looks good to me.
>>> - JPRT
>>> - The jtreg tests in hotspot/test
>>> - Newly added jtreg test
More information about the hotspot-dev