< prev index next >

test/gc/arguments/TestSmallInitialHeapWithLargePageAndNUMA.java

Print this page
rev 11780 : [mq]: webrev.0
rev 11781 : [mq]: webrev.1

@@ -39,22 +39,22 @@
 import jdk.test.lib.OutputAnalyzer;
 import sun.hotspot.WhiteBox;
 
 public class TestSmallInitialHeapWithLargePageAndNUMA {
 
-  private static final String MSG_EXIT_TOO_SMALL_HEAP = "Failed initializing NUMA. Too small initial heap size";
+  private static final String MSG_EXIT_TOO_SMALL_HEAP = "Failed initializing NUMA with large pages. Too small heap size";
   private static final String MSG_GC_TRIGGERED_BEFORE_INIT = "GC triggered before VM initialization completed.";
 
   public static void main(String[] args) throws Exception {
 
     WhiteBox wb = WhiteBox.getWhiteBox();
     long heapAlignment = wb.getHeapAlignment();
 
-    // NUMA with large pages is not fully compatible in Linux, so we are using pin region.
-    // And the pin region case, we will skip freeing memory if the page size is larger than the default page size.
-    // If we allocate pages less than NUMA node, NUMA will try to use default page size.
-    // And this will conflict for pin region.
+    // When using large pages, Linux does not support freeing parts of reserved and committed memory.
+    // And current Linux implementation uses page size as a condition to actually freeing memory.
+    // If we allocate pages less than NUMA node, NUMA will try to use default page size and
+    // this will free the memory which Linux does not support.
     // Assume the minimum NUMA node as 2.
     long initHeap = heapAlignment;
     long maxHeap = heapAlignment * 2;
 
     String[] vmArgs = {"-XX:+UseParallelGC",
< prev index next >