System.identityHashCode performance

Janda Martin jandam at
Tue Sep 22 13:52:39 UTC 2009

It was on JDK 1.6.0_u16 client compiler. Persisting about 2 000 "large" entities (~45 attributes) and 200 000 entities (~4 attributes) in one transaction (tuned with: batch writes, cache all statements, batch size = 200, bind all parameters)
Profiler: JProfiler version 4.2.4
  I'm not "JDK" guru so I'm not able to make a patch. I just found that there is used RegisterNatives in Object.hashCode, but not in System.identityHashCode.

  Thank you.

----- Original Message -----
From: "Christian Thalinger" <Christian.Thalinger at Sun.COM>
To: "Tom Hawtin" <Thomas.Hawtin at Sun.COM>
Cc: "Janda Martin" <jandam at>, core-libs-dev at
Sent: Tuesday, September 22, 2009 1:47:44 PM GMT +01:00 Amsterdam / Berlin / Bern / Rome / Stockholm / Vienna
Subject: Re: System.identityHashCode performance

Tom Hawtin wrote:
> Janda Martin wrote:
>> I would like to ask about any plans of speed improvements to "System.identityHashCode" or "IdentityHashMap"
>> I use EclipseLink and it uses IdentityHashMap for storing entities and their clones.
>> In my case System.identityHashCode consumes 54% of time during insert data to database. There are lots of other project using IdentityHashMap and identityHashCode.
> CR 6378256 seems to cover this for the client/C1 compiler. Presumably
> the server/C2 compiler already intrinsifies the method. It's been in
> "fix understood" for a couple of years...

Martin, are you having performance problems with client or server compiler?

-- Christian

More information about the core-libs-dev mailing list