RFR: 8234003: Improve IndexSet iteration
Claes Redestad
claes.redestad at oracle.com
Tue Nov 12 23:09:44 UTC 2019
Hi,
a significant portion of work done during register allocation in C2 is
iterating over IndexSets.
A few small optimizations show a ~4% decrease in instructions retired by
register allocation when instrumenting, and up to 3% fewer instructions
retired in total on startup tests.
Bug: https://bugs.openjdk.java.net/browse/JDK-8234003
Webrev: http://cr.openjdk.java.net/~redestad/8234003/open.00/
The biggest improvement comes from avoiding iterating over empty sets
altogether. A smaller improvement from adding a water mark to avoid
iterating over all the blocks in the IndexSet.
Testing: tier1-3, verified improvements on large and tiny startup tests,
checked that any increased inlining is footprint neutral on Linux.
Thanks!
/Claes
More information about the hotspot-compiler-dev
mailing list