Merge
authorminqi
Thu, 28 Mar 2013 00:44:15 -0700
changeset 16597 e6fde43d473e
parent 16595 672d098c1bcc (current diff)
parent 16596 905d4419a089 (diff)
child 16598 220e5e5b3947
Merge
--- a/hotspot/src/share/vm/runtime/arguments.cpp	Wed Mar 27 22:05:21 2013 -0700
+++ b/hotspot/src/share/vm/runtime/arguments.cpp	Thu Mar 28 00:44:15 2013 -0700
@@ -3325,6 +3325,13 @@
   }
   check_deprecated_gcs();
   check_deprecated_gc_flags();
+  if (AssumeMP && !UseSerialGC) {
+    if (FLAG_IS_DEFAULT(ParallelGCThreads) && ParallelGCThreads == 1) {
+      warning("If the number of processors is expected to increase from one, then"
+              " you should configure the number of parallel GC threads appropriately"
+              " using -XX:ParallelGCThreads=N");
+    }
+  }
 #else // INCLUDE_ALL_GCS
   assert(verify_serial_gc_flags(), "SerialGC unset");
 #endif // INCLUDE_ALL_GCS
--- a/hotspot/src/share/vm/runtime/globals.hpp	Wed Mar 27 22:05:21 2013 -0700
+++ b/hotspot/src/share/vm/runtime/globals.hpp	Thu Mar 28 00:44:15 2013 -0700
@@ -457,6 +457,9 @@
   lp64_product(intx, ObjectAlignmentInBytes, 8,                             \
           "Default object alignment in bytes, 8 is minimum")                \
                                                                             \
+  product(bool, AssumeMP, false,                                            \
+          "Instruct the VM to assume multiple processors are available")    \
+                                                                            \
   /* UseMembar is theoretically a temp flag used for memory barrier         \
    * removal testing.  It was supposed to be removed before FCS but has     \
    * been re-added (see 6401008) */                                         \
--- a/hotspot/src/share/vm/runtime/os.hpp	Wed Mar 27 22:05:21 2013 -0700
+++ b/hotspot/src/share/vm/runtime/os.hpp	Thu Mar 28 00:44:15 2013 -0700
@@ -180,7 +180,7 @@
   // Interface for detecting multiprocessor system
   static inline bool is_MP() {
     assert(_processor_count > 0, "invalid processor count");
-    return _processor_count > 1;
+    return _processor_count > 1 || AssumeMP;
   }
   static julong available_memory();
   static julong physical_memory();