JDK-8366042 : Creates Object Headers Microbenchmark Set.
  • Type: Enhancement
  • Component: performance
  • Sub-Component: libraries
  • Priority: P4
  • Status: New
  • Resolution: Unresolved
  • OS: generic
  • CPU: generic
  • Submitted: 2025-08-24
  • Updated: 2025-08-24
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Description
1) Create a set of microbenchmarks covering every elementary JVM operation that uses Object Header. 
Examples of such operations: virtual method invocation (including cache inline), instanceof, type cast, identity hash code, array store check, synchronization, etc. 

2) Extend the Object Headers Microbenchmark Set for "in-progress" projects. 
For example, Project Valhalla adds object header checks for acmp/aastore/aaload operations.

Having such a set of microbenchmarks, it would be possible to make performance evaluation, performance analysis, and performance regression tracking for every change/extension in the object header area. 

For example, it's known that Compact Object Headers cause -20% performance overhead for virtual method invocation. 

The goal is to get a comprehensive picture of Compact Object Headers (Vallhalla, and other projects) performance impact.
Ideally, every object header access should be covered by the Object Headers Microbenchmark Set except GC. It's not a goal to cover GC operations.