RFR: 8234003: Improve IndexSet iteration

Nils Eliasson nils.eliasson at oracle.com
Wed Nov 13 16:08:10 UTC 2019


Hi Claes,

Thanks for cleaning up some of the surrounding code too.

Looks good,

Nils Eliasson

On 2019-11-13 00:09, Claes Redestad wrote:
> 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