< prev index next >

test/gc/g1/TestG1TraceReclaimDeadHumongousObjectsAtYoungGC.java

Print this page
rev 7521 : [mq]: bengt-review


  71                                                "-Xmx128M",
  72                                                "-Xmn16M",
  73                                                "-XX:G1HeapRegionSize=1M",
  74                                                "-XX:+PrintGC",
  75                                                "-XX:+UnlockExperimentalVMOptions",
  76                                                "-XX:G1LogLevel=finest",
  77                                                "-XX:+G1TraceReclaimDeadHumongousObjectsAtYoungGC",
  78                                                GCWithHumongousObjectTest.class.getName());
  79 
  80     OutputAnalyzer output = new OutputAnalyzer(pb.start());
  81 
  82     // As G1ReclaimDeadHumongousObjectsAtYoungGC is set(default), below logs should be displayed.
  83     output.shouldContain("[Humongous Reclaim");
  84     output.shouldContain("[Humongous Total");
  85     output.shouldContain("[Humongous Candidate");
  86     output.shouldContain("[Humongous Reclaimed");
  87 
  88     // As G1TraceReclaimDeadHumongousObjectsAtYoungGC is set and GCWithHumongousObjectTest has humongous objects,
  89     // these logs should be displayed.
  90     output.shouldContain("Live humongous");
  91     output.shouldContain("Reclaim humongous region");
  92     output.shouldHaveExitValue(0);
  93   }
  94 
  95   static class GCTest {
  96     private static byte[] garbage;
  97 
  98     public static void main(String [] args) {
  99       System.out.println("Creating garbage");
 100       // create 128MB of garbage. This should result in at least one GC
 101       for (int i = 0; i < 1024; i++) {
 102         garbage = new byte[128 * 1024];
 103       }
 104       System.out.println("Done");
 105     }
 106   }
 107 
 108   static class GCWithHumongousObjectTest {
 109 
 110     public static final int M = 1024*1024;
 111     public static LinkedList<Object> garbageList = new LinkedList<Object>();




  71                                                "-Xmx128M",
  72                                                "-Xmn16M",
  73                                                "-XX:G1HeapRegionSize=1M",
  74                                                "-XX:+PrintGC",
  75                                                "-XX:+UnlockExperimentalVMOptions",
  76                                                "-XX:G1LogLevel=finest",
  77                                                "-XX:+G1TraceReclaimDeadHumongousObjectsAtYoungGC",
  78                                                GCWithHumongousObjectTest.class.getName());
  79 
  80     OutputAnalyzer output = new OutputAnalyzer(pb.start());
  81 
  82     // As G1ReclaimDeadHumongousObjectsAtYoungGC is set(default), below logs should be displayed.
  83     output.shouldContain("[Humongous Reclaim");
  84     output.shouldContain("[Humongous Total");
  85     output.shouldContain("[Humongous Candidate");
  86     output.shouldContain("[Humongous Reclaimed");
  87 
  88     // As G1TraceReclaimDeadHumongousObjectsAtYoungGC is set and GCWithHumongousObjectTest has humongous objects,
  89     // these logs should be displayed.
  90     output.shouldContain("Live humongous");
  91     output.shouldContain("Dead humongous region");
  92     output.shouldHaveExitValue(0);
  93   }
  94 
  95   static class GCTest {
  96     private static byte[] garbage;
  97 
  98     public static void main(String [] args) {
  99       System.out.println("Creating garbage");
 100       // create 128MB of garbage. This should result in at least one GC
 101       for (int i = 0; i < 1024; i++) {
 102         garbage = new byte[128 * 1024];
 103       }
 104       System.out.println("Done");
 105     }
 106   }
 107 
 108   static class GCWithHumongousObjectTest {
 109 
 110     public static final int M = 1024*1024;
 111     public static LinkedList<Object> garbageList = new LinkedList<Object>();


< prev index next >