RFR: 8240556: Abort concurrent mark after effective eager reclamation of humongous objects [v3]

Thomas Schatzl thomas.schatzl at oracle.com
Thu Sep 24 08:00:16 UTC 2020


Hi,

On 24.09.20 09:41, Stefan Johansson wrote:
 > On Wed, 23 Sep 2020 14:50:04 GMT, Thomas Schatzl 
<tschatzl at openjdk.org> wrote:
 >
 >>> Hi all,
 >>>
 >>>    please review this change that implements concurrent mark abort 
as proposed by Liang Mao from Alibaba.
 >>>
[...]
 >
 > Thanks for doing this additional refactoring Thomas.
 >
 > I think this is good now, just one more small suggestion.
 >
 > src/hotspot/share/gc/g1/g1Policy.cpp line 1262:
 >
 >> 1260: 
_concurrent_start_to_mixed.record_concurrent_start_end(end);
 >> 1261:       }
 >> 1262:       break;
 >
 > I would add the undo-case after to avoid having to check for it in the
 > if-statement. Like this:
 > Suggestion:
 >
 >      case ConcurrentStartMarkGC:
 >        // Do not track time-to-mixed time for periodic collections as
 >        // they are likely to be not representative to regular
 >        // operation as the mutators are idle at that time.
 >        if ((_g1h->gc_cause() != GCCause::_g1_periodic_collection) {
 >          _concurrent_start_to_mixed.record_concurrent_start_end(end);
 >        }
 >      case ConcurrentStartUndoGC:
 >        // Do not track undone concurrent cycles.
 >        break;

You are right, will do. I was somehow thinking that the StartUndo case 
could also be triggered by a periodic collection which it can't. I'll 
add an assert here.

Thanks,
   Thomas


More information about the hotspot-jfr-dev mailing list