diff src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp @ 10361:eda078b01c65

8015268: NPG: 2.5% regression in young GC times on CRM Sales Opty Summary: Split SystemDictionary and ClassLoaderDataGraph root processing to help load balancing. Reviewed-by: tschatzl, johnc
author stefank
date Mon, 27 May 2013 15:22:59 +0200
parents d0aa87f04bd5
children de6a9e811145
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp	Fri May 24 14:16:41 2013 +0200
+++ b/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp	Mon May 27 15:22:59 2013 +0200
@@ -79,14 +79,15 @@
       break;
 
     case system_dictionary:
-      {
       SystemDictionary::oops_do(&roots_closure);
+      break;
 
-        // Move this to another root_type?
-        PSScavengeKlassClosure klass_closure(pm);
-        ClassLoaderDataGraph::oops_do(&roots_closure, &klass_closure, false);
-      }
-      break;
+    case class_loader_data:
+    {
+      PSScavengeKlassClosure klass_closure(pm);
+      ClassLoaderDataGraph::oops_do(&roots_closure, &klass_closure, false);
+    }
+    break;
 
     case management:
       Management::oops_do(&roots_closure);