RFR(M): Shenandoah string dedup support

Aleksey Shipilev shade at redhat.com
Thu Aug 24 11:07:15 UTC 2017


On 08/23/2017 07:52 PM, Zhengyu Gu wrote:
>>   *) Do we need to do StringDedup cleanup on each concurrent mark? Right now all the cleanup actions
>> in final mark are done optionally (every 5-th cycle by default). Should we do the String table
>> cleanup there as well?
> Unless we want to mark the table (which I think it is a waste), otherwise, we will step on dead
> objects when update refs later.

Okay, then putting it under "System Purge" is misnomer:

1197   _phase_names[purge_str_dedup_table]           = "    String Dedup Table";

Suggestion (different enum ID, and indenting):

_phase_names[clean_dedup_table]           = "  String Dedup Table";

> Webrev updated: http://cr.openjdk.java.net/~zgu/shenandoah/strdedup/webrev.01/index.html

My bad, I missed two new files!

 *) I think there is no reason to split declaration and definitions for methods in new closures
defined in shenandoahStringDedup.cpp.

 *) Indenting:

 152   ShenandoahUpdateRefsClosure      update_refs_closure;

We need Roman to look through this as well.

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list