changeset 9456:cb4719896b2f

Revert tlab accounting patch. That caused asserts in ThreadLocalAllocBuffer.
author rkennke
date Thu, 20 Aug 2015 18:28:43 +0200
parents 2cb85c37fb07
children 5ac3e2b600e1 581a34400ca9
files src/share/vm/gc/shenandoah/shenandoahHeap.cpp src/share/vm/gc/shenandoah/shenandoahHeap.hpp src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp
diffstat 4 files changed, 6 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/gc/shenandoah/shenandoahHeap.cpp	Thu Aug 20 17:57:41 2015 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahHeap.cpp	Thu Aug 20 18:28:43 2015 +0200
@@ -1879,7 +1879,6 @@
     if (!silent) gclog_or_tty->print("(SKIPPING roots, heapRegions, remset) ");
   }
 }
-
 size_t ShenandoahHeap::tlab_capacity(Thread *thr) const {
   return _free_regions->available();
 }
@@ -2104,10 +2103,11 @@
 
 void ShenandoahHeap::start_concurrent_marking() {
 
+  accumulate_statistics_all_tlabs();
+
   set_concurrent_mark_in_progress(true);
   // We need to reset all TLABs because we'd lose marks on all objects allocated in them.
   if (UseTLAB) {
-    accumulate_statistics_all_tlabs();
     ensure_parsability(true);
   }
 
@@ -2275,10 +2275,6 @@
 
 }
 
-void ShenandoahHeap::accumulate_statistics_all_tlabs() {
-  CollectedHeap::accumulate_statistics_all_tlabs();
-}
-
 void ShenandoahHeap::stop_concurrent_marking() {
   assert(concurrent_mark_in_progress(), "How else could we get here?");
   if (! cancelled_concgc()) {
@@ -2288,14 +2284,6 @@
   }
   set_concurrent_mark_in_progress(false);
 
-
-  if (UseTLAB) {
-    shenandoahPolicy()->record_phase_start(ShenandoahCollectorPolicy::resize_tlabs);
-    accumulate_statistics_all_tlabs();
-    resize_all_tlabs();
-    shenandoahPolicy()->record_phase_end(ShenandoahCollectorPolicy::resize_tlabs);
-  }
-
   if (ShenandoahGCVerbose) {
     print_heap_regions();
   }
--- a/src/share/vm/gc/shenandoah/shenandoahHeap.hpp	Thu Aug 20 17:57:41 2015 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahHeap.hpp	Thu Aug 20 18:28:43 2015 +0200
@@ -215,7 +215,6 @@
   virtual size_t max_tlab_size() const;
 
   void resize_all_tlabs();
-  void accumulate_statistics_all_tlabs();
   void accumulate_statistics_all_gclabs();
 
   HeapWord* tlab_post_allocation_setup(HeapWord* obj, bool new_obj);
--- a/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp	Thu Aug 20 17:57:41 2015 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp	Thu Aug 20 18:28:43 2015 +0200
@@ -69,7 +69,6 @@
   }
  
   if (UseTLAB) {
-    _heap->accumulate_statistics_all_tlabs();
     _heap->ensure_parsability(true);
   }
   
@@ -133,10 +132,6 @@
 
   _heap->reset_mark_bitmap();
 
-  if (UseTLAB) {
-    _heap->resize_all_tlabs();
-  }
-
   if (ShenandoahTraceFullGC) {
     gclog_or_tty->print_cr("Shenandoah-full-gc: finish with heap used: "SIZE_FORMAT" MB", _heap->used() / M);
   }
--- a/src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp	Thu Aug 20 17:57:41 2015 +0200
+++ b/src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp	Thu Aug 20 18:28:43 2015 +0200
@@ -31,6 +31,10 @@
     tty->print("vm_ShenandoahInitMark\n");
   sh->start_concurrent_marking();
 
+  sh->shenandoahPolicy()->record_phase_start(ShenandoahCollectorPolicy::resize_tlabs);
+  sh->resize_all_tlabs();
+  sh->shenandoahPolicy()->record_phase_end(ShenandoahCollectorPolicy::resize_tlabs);
+
   sh->shenandoahPolicy()->record_phase_end(ShenandoahCollectorPolicy::init_mark);
 
   if (! ShenandoahConcurrentMarking) {
@@ -47,11 +51,6 @@
 void VM_ShenandoahFullGC::doit() {
 
   ShenandoahMarkCompact::do_mark_compact();
-
-  ShenandoahHeap *sh = ShenandoahHeap::heap();
-  sh->shenandoahPolicy()->record_phase_start(ShenandoahCollectorPolicy::resize_tlabs);
-  sh->resize_all_tlabs();
-  sh->shenandoahPolicy()->record_phase_end(ShenandoahCollectorPolicy::resize_tlabs);
 }
 
 const char* VM_ShenandoahFullGC::name() const {