[8u] RFR 8158871: Long response times with G1 and StringDeduplication
Vladimir Kempik
vladimir.kempik at oracle.com
Thu Jun 30 11:57:27 UTC 2016
Hello
Thanks for the comment Per.
Here is updated webrev -
http://cr.openjdk.java.net/~vkempik/8158871/webrev.01/
Can I have some jdk8 reviewer to take quick look at this as well?
Thanks.
On 30.06.2016 10:14, Per Liden wrote:
> Hi,
>
> On 2016-06-29 17:39, Vladimir Kempik wrote:
>> Hello
>>
>> Please review this backport of 8158871 to jdk8u.
>>
>> Few changes for jdk8 were applied:
>>
>> 1) universall logging call changed to gclog_or_tty->print_cr
>>
>> 2) added casting of multiplication result (size_t * double) to size_t
>> because on macosx platform the result was casted to double:
>>
>> _entry_cache = new G1StringDedupEntryCache((size_t)(_min_size *
>> _max_cache_factor));
>> ...
>> _entry_cache->set_max_size((size_t)(size * _max_cache_factor));
>>
>>
>>
>>
>> Testing: jprt
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8158871
>> Webrev: http://cr.openjdk.java.net/~vkempik/8158871/webrev.00/
>
>
> src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp
> --------------------------------------------------------
> Since we don't have unified logging in 8 you need to check the
> PrintStringDeduplicationStatistics flags before printing "Deleted...".
> Also, since we don't have decorating tags we need more context in the
> printout. I suggest "[GC concurrent-string-deduplication, deleted X
> entries, X.XXX secs]".
>
> So, the incremental change would be:
>
> - gclog_or_tty->print_cr("Deleted " UINTX_FORMAT " entries, "
> G1_STRDEDUP_TIME_FORMAT, count, end - start);
> + if (PrintStringDeduplicationStatistics) {
> + gclog_or_tty->print_cr("[GC concurrent-string-deduplication,
> deleted " UINTX_FORMAT " entries, " G1_STRDEDUP_TIME_FORMAT "]",
> count, end - start);
> + }
>
>
> Other than that, the patch looks good.
>
> cheers,
> /Per
>
>>
>> Thanks
>> -Vladimir
>>
More information about the hotspot-gc-dev
mailing list