[master] RFR: Trim identity-hashcode to 25bit

Roman Kennke rkennke at openjdk.java.net
Mon May 10 17:15:16 UTC 2021


I'd like to trim the identity hashcode to 25 bits to make room in the upper 32bits for the compressed class-pointer.

This could in theory regress performance on workloads that make heavy use of i-hashes, but I could not show this in practice (by specjvm workloads like compiler which uses lots of ihashes).

Next step would be to move the Klass* into the upper 32bit part. (If you look closely, this would be the exact header layout of 32bit JVMs.) And then get rid of the dedicated Klass* field. :-D Eventually I'd make ihash-bits and klass* bits configurable to trade one for the other.

Testing:
 - [x] some manual benchmarks
 - [x] tier1
 - [ ] tier2

-------------

Commit messages:
 - Trim identity-hashcode to 25bit

Changes: https://git.openjdk.java.net/lilliput/pull/3/files
 Webrev: https://webrevs.openjdk.java.net/?repo=lilliput&pr=3&range=00
  Stats: 15 lines in 2 files changed: 6 ins; 2 del; 7 mod
  Patch: https://git.openjdk.java.net/lilliput/pull/3.diff
  Fetch: git fetch https://git.openjdk.java.net/lilliput pull/3/head:pull/3

PR: https://git.openjdk.java.net/lilliput/pull/3


More information about the lilliput-dev mailing list