Integrated: 8253037: G1: Improve check for string dedup

Kim Barrett kbarrett at openjdk.java.net
Wed Nov 4 05:09:58 UTC 2020


On Sun, 1 Nov 2020 07:04:29 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:

> Please review this change to G1 evacuation's checking for string
> deduplication.  The old code would go out of line to the G1StringDedup
> support code for every object when deduplication is enabled, only to usually
> discover the object isn't a string.  Instead we now have a simpl inline
> test for the combination of dedup enabled and object is a string, and only
> call out to the dedup support code when that's true.  This eliminates some
> work for every non-string (non-array) object when dedup is enabled.
> 
> The performance impact seems to be pretty small and hard to measure, since
> enabling deduplication has other costs that seem to overwhelm the cost
> here.  I'm hoping to improve that with JDK-8254598.
> 
> Testing:
> tier1 on Oracle supported platforms.
> Performance testing with deduplication enabled.

This pull request has now been integrated.

Changeset: 4b88119b
Author:    Kim Barrett <kbarrett at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/4b88119b
Stats:     38 lines in 5 files changed: 19 ins; 7 del; 12 mod

8253037: G1: Improve check for string dedup

Combine dedup enabled and is_string into a single test, using the already in-hand klass of the object.

Reviewed-by: ayang, tschatzl

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

PR: https://git.openjdk.java.net/jdk/pull/981



More information about the hotspot-gc-dev mailing list