RFR :7088419 : (L) Use x86 Hardware CRC32 Instruction with java.util.zip.CRC32 and java.util.zip.Adler32

David Chase david.r.chase at oracle.com
Thu May 16 17:31:00 UTC 2013

On 2013-05-16, at 12:17 PM, Mike Duigou <mike.duigou at oracle.com> wrote:
> I haven't looked at the details for the PCLMULQDQ instruction but a caryless multiply could be of use to some of the crypto primitives as well (GHASH, GMAC and probably others). Perhaps the property could be "sun.hotspot.x64.clmulSupported" or something less specific to the usage.

Note that the instruction also works on 32-bit, and once the builds all use sufficiently modern compilers, the same source code works for both.

> What's our actual experience with needing switches like -XX:-UseCLMUL or-XX:-UseAVX for other features? Faulty implementations? Feature misreporting? Performance regressions? Virtualization interactions?

I haven't seen any virtualization problems -- I've also been testing on VMs, Ubuntu and Solaris on VMWare.
Should I also give it a go in VirtualBox?  What should I be looking for?


More information about the core-libs-dev mailing list