< prev index next >

test/hotspot/jtreg/gc/shenandoah/TestStringDedup.java

Print this page
rev 58687 : Shenandoah: New incremental-update mode


  49  * @key gc
  50  * @requires vm.gc.Shenandoah & !vm.graal.enabled
  51  * @library /test/lib
  52  * @modules java.base/jdk.internal.misc:open
  53  * @modules java.base/java.lang:open
  54  *          java.management
  55  *
  56  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  57  *      -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=aggressive
  58  *      TestStringDedup
  59  *
  60  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  61  *      -XX:+UseShenandoahGC
  62  *      TestStringDedup
  63  *
  64  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  65  *      -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=compact
  66  *      TestStringDedup
  67  */
  68 



















  69 import java.lang.reflect.*;
  70 import java.util.*;
  71 
  72 import sun.misc.*;
  73 
  74 public class TestStringDedup {
  75     private static Field valueField;
  76     private static Unsafe unsafe;
  77 
  78     private static final int UniqueStrings = 20;
  79 
  80     static {
  81         try {
  82             Field field = Unsafe.class.getDeclaredField("theUnsafe");
  83             field.setAccessible(true);
  84             unsafe = (Unsafe) field.get(null);
  85 
  86             valueField = String.class.getDeclaredField("value");
  87             valueField.setAccessible(true);
  88         } catch (Exception e) {




  49  * @key gc
  50  * @requires vm.gc.Shenandoah & !vm.graal.enabled
  51  * @library /test/lib
  52  * @modules java.base/jdk.internal.misc:open
  53  * @modules java.base/java.lang:open
  54  *          java.management
  55  *
  56  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  57  *      -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=aggressive
  58  *      TestStringDedup
  59  *
  60  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  61  *      -XX:+UseShenandoahGC
  62  *      TestStringDedup
  63  *
  64  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  65  *      -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=compact
  66  *      TestStringDedup
  67  */
  68 
  69 /*
  70  * @test TestStringDedup
  71  * @summary Test Shenandoah string deduplication implementation
  72  * @key gc
  73  * @requires vm.gc.Shenandoah & !vm.graal.enabled
  74  * @library /test/lib
  75  * @modules java.base/jdk.internal.misc:open
  76  * @modules java.base/java.lang:open
  77  *          java.management
  78  *
  79  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  80  *      -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu
  81  *      TestStringDedup
  82  *
  83  * @run main/othervm -Xmx256m -Xlog:gc+stats -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
  84  *      -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu -XX:ShenandoahGCHeuristics=aggressive
  85  *      TestStringDedup
  86  */
  87 
  88 import java.lang.reflect.*;
  89 import java.util.*;
  90 
  91 import sun.misc.*;
  92 
  93 public class TestStringDedup {
  94     private static Field valueField;
  95     private static Unsafe unsafe;
  96 
  97     private static final int UniqueStrings = 20;
  98 
  99     static {
 100         try {
 101             Field field = Unsafe.class.getDeclaredField("theUnsafe");
 102             field.setAccessible(true);
 103             unsafe = (Unsafe) field.get(null);
 104 
 105             valueField = String.class.getDeclaredField("value");
 106             valueField.setAccessible(true);
 107         } catch (Exception e) {


< prev index next >