RFR: Cleanup UseShenandoahOWST blocks

Roman Kennke rkennke at redhat.com
Mon Jul 9 09:02:30 UTC 2018


Good, go for it, thanks!

Am 9. Juli 2018 10:40:47 MESZ schrieb Aleksey Shipilev <shade at redhat.com>:
>This applies a few trivial cleanups around UseShenandoahOWST blocks.
>Mostly renames "*_task" ->
>task, and cleaning up useless UseShenandoahOWST in
>ShenandoahTraversalGC::init_traversal_collection:
>
>diff -r fde9a873d896
>src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp
>--- a/src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp	Mon
>Jul 09 10:29:38 2018 +0200
>+++ b/src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp	Mon
>Jul 09 10:34:32 2018 +0200
>@@ -419,16 +419,16 @@
>
>   task_queues()->reserve(nworkers);
>
>   if (UseShenandoahOWST) {
>     ShenandoahTaskTerminator terminator(nworkers, task_queues());
>-    ShenandoahConcurrentMarkingTask markingTask =
>ShenandoahConcurrentMarkingTask(this,
>&terminator, update_refs);
>-    workers->run_task(&markingTask);
>+    ShenandoahConcurrentMarkingTask task(this, &terminator,
>update_refs);
>+    workers->run_task(&task);
>   } else {
>     ParallelTaskTerminator terminator(nworkers, task_queues());
>-    ShenandoahConcurrentMarkingTask markingTask =
>ShenandoahConcurrentMarkingTask(this,
>&terminator, update_refs);
>-    workers->run_task(&markingTask);
>+    ShenandoahConcurrentMarkingTask task(this, &terminator,
>update_refs);
>+    workers->run_task(&task);
>   }
>
>assert(task_queues()->is_empty() || sh->cancelled_gc(), "Should be
>empty when not cancelled");
> }
>
>diff -r fde9a873d896
>src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp
>--- a/src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp	Mon Jul
>09 10:29:38 2018 +0200
>+++ b/src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp	Mon Jul
>09 10:34:32 2018 +0200
>@@ -417,19 +417,12 @@
>     {
>       uint nworkers = _heap->workers()->active_workers();
>       task_queues()->reserve(nworkers);
>ShenandoahRootProcessor rp(_heap, nworkers,
>ShenandoahPhaseTimings::init_traversal_gc_work);
>
>-      if (UseShenandoahOWST) {
>-        ShenandoahTaskTerminator terminator(nworkers, task_queues());
>-        ShenandoahInitTraversalCollectionTask traversal_task(&rp);
>-        _heap->workers()->run_task(&traversal_task);
>-      } else {
>-        ParallelTaskTerminator terminator(nworkers, task_queues());
>-        ShenandoahInitTraversalCollectionTask traversal_task(&rp);
>-        _heap->workers()->run_task(&traversal_task);
>-      }
>+      ShenandoahInitTraversalCollectionTask traversal_task(&rp);
>+      _heap->workers()->run_task(&traversal_task);
>     }
>
> #if defined(COMPILER2) || INCLUDE_JVMCI
>     DerivedPointerTable::update_pointers();
> #endif
>@@ -641,16 +634,16 @@
>   if (!_heap->cancelled_gc()) {
>     uint nworkers = _heap->workers()->active_workers();
>     task_queues()->reserve(nworkers);
>     if (UseShenandoahOWST) {
>       ShenandoahTaskTerminator terminator(nworkers, task_queues());
>-      ShenandoahConcurrentTraversalCollectionTask
>traversal_task(&terminator);
>-      _heap->workers()->run_task(&traversal_task);
>+      ShenandoahConcurrentTraversalCollectionTask task(&terminator);
>+      _heap->workers()->run_task(&task);
>     } else {
>       ParallelTaskTerminator terminator(nworkers, task_queues());
>-      ShenandoahConcurrentTraversalCollectionTask
>traversal_task(&terminator);
>-      _heap->workers()->run_task(&traversal_task);
>+      ShenandoahConcurrentTraversalCollectionTask task(&terminator);
>+      _heap->workers()->run_task(&task);
>     }
>   }
>
>if (!_heap->cancelled_gc() && ShenandoahPreclean &&
>_heap->process_references()) {
>     ShenandoahEvacOOMScope oom_evac_scope;
>@@ -672,16 +665,16 @@
>
>     // Finish traversal
>ShenandoahRootProcessor rp(_heap, nworkers,
>ShenandoahPhaseTimings::final_traversal_gc_work);
>     if (UseShenandoahOWST) {
>       ShenandoahTaskTerminator terminator(nworkers, task_queues());
>-      ShenandoahFinalTraversalCollectionTask traversal_task(&rp,
>&terminator);
>-      _heap->workers()->run_task(&traversal_task);
>+      ShenandoahFinalTraversalCollectionTask task(&rp, &terminator);
>+      _heap->workers()->run_task(&task);
>     } else {
>       ParallelTaskTerminator terminator(nworkers, task_queues());
>-      ShenandoahFinalTraversalCollectionTask traversal_task(&rp,
>&terminator);
>-      _heap->workers()->run_task(&traversal_task);
>+      ShenandoahFinalTraversalCollectionTask task(&rp, &terminator);
>+      _heap->workers()->run_task(&task);
>     }
> #if defined(COMPILER2) || INCLUDE_JVMCI
>     DerivedPointerTable::update_pointers();
> #endif
>   }
>
>
>Testing: tier1_gc_shenandoah
>
>Thanks,
>-Aleksey

-- 
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.


More information about the shenandoah-dev mailing list