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
Fri May 17 01:52:05 UTC 2013

On 2013-05-16, at 9:26 PM, David Holmes <david.holmes at oracle.com> wrote:

> Dave,
> This is certainly significant work!
> To get the mundane issues out of the way:
> - C code uses indent of 2 in places instead of 4

Okey-doke, I will reformat.

> There is a lot to try and digest here.

Ask away, I'll do my best.  I am unsure what breadcrumbs I need to leave for the future (including my future self); I worked very hard to get that code into a state where I would not need to touch the hairy bits with algebra and unrolling possibly forever, but in fact it is possible that with a little care the drain code could be improved (I was running out of steam, and the bit-reversal affected it significantly).

I am least certain of the fork-join code -- I want to be sure that if this code is running in a busy-server environment, that it will not use threads (not tasks, but threads) wastefully.  That is, if I'm more than 50% off linear speedup, I think I'm done, and I'd be happier if it was only 75% (which 2 and 4 task splitting seems to get pretty reliably, but less so after that, this on machines with many more than 4 "processors").

> Why does the ASM not support Windows compiler?

I literally, actually forgot, and I haven't the faintest idea how to configure a standard Windows build.  I'm sure it will be an easy and incredibly pleasant experience.  If there is a cheat sheet, I would love to see it, especially the part about installing and configuring software.  There is a Windows 7 laptop in my office, so I do have "easy" access to Windows.

I guess I had better give this a look.  I did Windows development about ten years ago, with both Visual Studio and Cygwin, so it will not be completely foreign to me.

> David

More information about the core-libs-dev mailing list