RFR: 8176593: Throwable::getStackTrace performance regression

Claes Redestad claes.redestad at oracle.com
Tue Mar 14 16:57:17 UTC 2017


Hi,

current implementation of StringTable::lookup_shared computes hash
values twice even when the same hash algorithm is used, which stand out
in profiles as the primary cause for a performance regression on things
like Throwable::getStackTrace.

By refactoring the logic to not compute hashes using a specific
algorithm more than once we recuperate the regression and actually beat
JDK 8 on reported microbenchmarks.

Webrev: http://cr.openjdk.java.net/~redestad/8176593/hotspot.01/
Bug: https://bugs.openjdk.java.net/browse/JDK-8176593

Testing: RBT jdk-tier1,hs-runtime-pre-checkin,hs-tier2

Thanks!

/Claes



More information about the hotspot-runtime-dev mailing list