Request for review: 8004076: Move _max_locals and _size_of_parameters to ConstMethod for better sharing
John Rose
john.r.rose at oracle.com
Tue Dec 11 20:00:37 PST 2012
On Dec 11, 2012, at 5:38 PM, Jiangli Zhou wrote:
> I see CompressedStream uses UNSIGNED5 coding of Pack200. I tried to google around for the UNSIGNED5 coding compression rate, but without much luck. If you have any info on that, please share. I was trying to find some usage examples in the VM code, but there seems no usage of CompressedStream (except the sa agent java code). Do you have any pointer?
Right; you started with the comments here:
http://hg.openjdk.java.net/jdk8/jdk8/hotspot/file/tip/src/share/vm/code/compressedStream.hpp
Detailed definitions for UNSIGNED5 and related codings are in the pack200 spec:
http://docs.oracle.com/javase/6/docs/technotes/guides/pack200/pack-spec.html#tocInEnSc
There is also a more focused description here in the Java source code:
http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/tip/src/share/classes/com/sun/java/util/jar/pack/Coding.java
Then we have BandStructure.java: 108: final static Coding UNSIGNED5 = Coding.of(5,64);
To search for compressed stream use in HotSpot, look for subtypes of either the read or write version.
grep -n CompressedReadStream $(hg loc -I src)
grep -n CompressedWriteStream $(hg loc -I src)
Then look at DebugInfoReadStream and CompressedLineNumberReadStream, and the writer versions. There's a lot of compressed metadata in the code cache, and interpreter oop maps use it. It is not used in metadata, yet.
— John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/attachments/20121211/55b8b515/attachment.html
More information about the hotspot-runtime-dev
mailing list