RFR (XS): CR 8006176: Switch to optimal identity hash code generator

Aleksey Shipilev aleksey.shipilev at oracle.com
Mon Jan 14 04:00:31 PST 2013


On 01/14/2013 03:55 PM, Aleksey Shipilev wrote:
> 32 threads:
> -XX:hashCode=0: 10.7 +- 0.1 ops/usec
> -XX:hashCode=1: 175.2 +- 4.9 ops/usec
> -XX:hashCode=2: 184.8 +- 3.7 ops/usec
> -XX:hashCode=3: 14.2 +- 0.1 ops/usec
> -XX:hashCode=4: 160.0 +- 2.6 ops/usec
> -XX:hashCode=5: 176.6 +- 6.0 ops/usec
> 
> Note whooping scalability increase when dealing with non-shared generators.
> 
> Randomicity is another concern, and our internal tests show that
> thread-local PRNG (mode 5) is as good as the global PRNG (mode 0), you
> can see that here:
>  http://cr.openjdk.java.net/~shade/8006176/randomicity/
> 
> It turns out that modes 0, 2, and 5 are random enough; and mode 5 is the
> most scalable one. Hence, we'd like to switch to mode 5, here's the webrev:
>  http://cr.openjdk.java.net/~shade/8006176/webrev.00/

Sorry, this was slightly inaccurate interpretation of the analysis
result. Only modes 0 and 5 are random enough; and again, on the
scalability standpoint, mode 5 is preferred.

-Aleksey.


More information about the hotspot-runtime-dev mailing list