# HG changeset patch # User shade # Date 1509030249 -7200 # Node ID 0cb1442be9d6e079b3e6d1bf7f65f3e0f537a6cd # Parent 71b2baff85489bdce2d0d6c140ce66aba09318f9 Fix up uninit tests diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/alloc/uninit/IntArray.java --- a/src/main/java/org/openjdk/gcbench/alloc/uninit/IntArray.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/alloc/uninit/IntArray.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,6 +1,6 @@ package org.openjdk.gcbench.alloc.uninit; -import org.openjdk.gcbench.tests.AllocUninit; +import org.openjdk.gcbench.tests.UnderPressureTest; import org.openjdk.jmh.annotations.*; import java.util.concurrent.TimeUnit; @@ -8,15 +8,14 @@ @BenchmarkMode(Mode.AverageTime) @OutputTimeUnit(TimeUnit.NANOSECONDS) @State(Scope.Benchmark) -@Fork(jvmArgsPrepend = {"--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED"}) -public class IntArray { +public class IntArray extends UnderPressureTest { @Param({"1"}) int size; @Benchmark public Object test() { - return AllocUninit.alloc(size); + return uninitAlloc(size); } } diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/fragger/TreeFragger.java --- a/src/main/java/org/openjdk/gcbench/fragger/TreeFragger.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/fragger/TreeFragger.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,6 +1,6 @@ package org.openjdk.gcbench.fragger; -import org.openjdk.gcbench.tests.AllocUninit; +import org.openjdk.gcbench.tests.UnderPressureTest; import org.openjdk.gcbench.util.AllocProfileSupport; import org.openjdk.gcbench.util.ratelimit.MultiTokenBucket; import org.openjdk.jmh.annotations.*; @@ -15,7 +15,7 @@ @OutputTimeUnit(TimeUnit.SECONDS) @Threads(Threads.MAX) @State(Scope.Benchmark) -public class TreeFragger { +public class TreeFragger extends UnderPressureTest { @Param("16") int payloadSize; @@ -68,12 +68,12 @@ for (int m = 31 - Integer.numberOfLeadingZeros(addr); m >= 0; m--) { if ((addr & (1 << m)) != 0) { if (cur.left == null) { - cur.left = new Node(AllocUninit.alloc(payloadSize)); + cur.left = new Node(uninitAlloc(payloadSize)); } cur = cur.left; } else { if (cur.right == null) { - cur.right = new Node(AllocUninit.alloc(payloadSize)); + cur.right = new Node(uninitAlloc(payloadSize)); } cur = cur.right; } @@ -86,7 +86,7 @@ @Benchmark public void test() { bucket.limit(); - doStore(ThreadLocalRandom.current().nextInt(count), AllocUninit.alloc(payloadSize)); + doStore(ThreadLocalRandom.current().nextInt(count), uninitAlloc(payloadSize)); } private void doStore(int addr, Object obj) { diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/tenure/Arrays.java --- a/src/main/java/org/openjdk/gcbench/tenure/Arrays.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/tenure/Arrays.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,18 +1,17 @@ package org.openjdk.gcbench.tenure; -import org.openjdk.gcbench.tests.AllocUninit; +import org.openjdk.gcbench.tests.UnderPressureTest; import org.openjdk.jmh.annotations.*; import java.util.concurrent.TimeUnit; @Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) @Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) -@Fork(jvmArgsPrepend = {"--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED"}) @BenchmarkMode(Mode.AverageTime) @OutputTimeUnit(TimeUnit.NANOSECONDS) @Threads(Threads.MAX) @State(Scope.Thread) -public class Arrays { +public class Arrays extends UnderPressureTest { Object[] tenures; @@ -29,7 +28,7 @@ @Benchmark public void test() { int cur = idx; - tenures[cur] = AllocUninit.alloc(1000); + tenures[cur] = uninitAlloc(1000); if (cur + 1 < size) { idx = cur + 1; } else { diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/tenure/Queues.java --- a/src/main/java/org/openjdk/gcbench/tenure/Queues.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/tenure/Queues.java Thu Oct 26 17:04:09 2017 +0200 @@ -7,7 +7,6 @@ @Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) @Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) -@Fork(jvmArgsPrepend = {"--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED"}) @BenchmarkMode(Mode.AverageTime) @OutputTimeUnit(TimeUnit.NANOSECONDS) @Threads(Threads.MAX) diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/tests/UnderPressureAsyncTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/org/openjdk/gcbench/tests/UnderPressureAsyncTest.java Thu Oct 26 17:04:09 2017 +0200 @@ -0,0 +1,40 @@ +package org.openjdk.gcbench.tests; + +import org.openjdk.jmh.annotations.*; +import org.openjdk.jmh.infra.Blackhole; + + +@Fork(jvmArgsAppend = {"--add-opens", "java.base/jdk.internal.misc=ALL-UNNAMED"}) +@State(Scope.Benchmark) +public class UnderPressureAsyncTest { + + SuperAllocator allocator; + + @Setup + public void setup(Blackhole bh) { + allocator = new SuperAllocator(bh); + allocator.start(); + } + + @TearDown + public void tearDown() throws InterruptedException { + allocator.interrupt(); + allocator.join(); + } + + public class SuperAllocator extends Thread { + private final Blackhole bh; + + public SuperAllocator(Blackhole bh) { + this.bh = bh; + } + + @Override + public void run() { + while (!Thread.interrupted()) { + bh.consume(AllocUninit.alloc(1000)); + } + } + } + +} diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/tests/UnderPressureTest.java --- a/src/main/java/org/openjdk/gcbench/tests/UnderPressureTest.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/tests/UnderPressureTest.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,40 +1,12 @@ package org.openjdk.gcbench.tests; import org.openjdk.jmh.annotations.*; -import org.openjdk.jmh.infra.Blackhole; - -@Fork(jvmArgsPrepend = {"--add-opens", "java.base/jdk.internal.misc=ALL-UNNAMED"}) -@State(Scope.Benchmark) +@Fork(jvmArgsAppend = {"--add-opens", "java.base/jdk.internal.misc=ALL-UNNAMED"}) public class UnderPressureTest { - SuperAllocator allocator; - - @Setup - public void setup(Blackhole bh) { - allocator = new SuperAllocator(bh); - allocator.start(); - } - - @TearDown - public void tearDown() throws InterruptedException { - allocator.interrupt(); - allocator.join(); - } - - public class SuperAllocator extends Thread { - private final Blackhole bh; - - public SuperAllocator(Blackhole bh) { - this.bh = bh; - } - - @Override - public void run() { - while (!Thread.interrupted()) { - bh.consume(AllocUninit.alloc(1000)); - } - } + protected Object uninitAlloc(int size) { + return AllocUninit.alloc(size); } } diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/yield/ArrayIteration.java --- a/src/main/java/org/openjdk/gcbench/yield/ArrayIteration.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/yield/ArrayIteration.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,6 +1,6 @@ package org.openjdk.gcbench.yield; -import org.openjdk.gcbench.tests.UnderPressureTest; +import org.openjdk.gcbench.tests.UnderPressureAsyncTest; import org.openjdk.jmh.annotations.*; import org.openjdk.jmh.infra.Blackhole; @@ -13,7 +13,7 @@ @OutputTimeUnit(TimeUnit.MILLISECONDS) @Threads(Threads.MAX) @State(Scope.Benchmark) -public class ArrayIteration extends UnderPressureTest { +public class ArrayIteration extends UnderPressureAsyncTest { int[] arr; diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/yield/LinkedListGet.java --- a/src/main/java/org/openjdk/gcbench/yield/LinkedListGet.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/yield/LinkedListGet.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,6 +1,5 @@ package org.openjdk.gcbench.yield; -import org.openjdk.gcbench.tests.UnderPressureTest; import org.openjdk.jmh.annotations.*; import org.openjdk.jmh.infra.Blackhole; diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/yield/MonteCarloPI.java --- a/src/main/java/org/openjdk/gcbench/yield/MonteCarloPI.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/yield/MonteCarloPI.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,10 +1,8 @@ package org.openjdk.gcbench.yield; -import org.openjdk.gcbench.tests.UnderPressureTest; +import org.openjdk.gcbench.tests.UnderPressureAsyncTest; import org.openjdk.jmh.annotations.*; -import org.openjdk.jmh.infra.Blackhole; -import java.util.Random; import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; @@ -15,7 +13,7 @@ @OutputTimeUnit(TimeUnit.SECONDS) @Threads(Threads.MAX) @State(Scope.Benchmark) -public class MonteCarloPI extends UnderPressureTest { +public class MonteCarloPI extends UnderPressureAsyncTest { @Param({"100000000"}) int size; diff -r 71b2baff8548 -r 0cb1442be9d6 src/main/java/org/openjdk/gcbench/yield/Sleeps.java --- a/src/main/java/org/openjdk/gcbench/yield/Sleeps.java Thu Oct 26 14:11:21 2017 +0200 +++ b/src/main/java/org/openjdk/gcbench/yield/Sleeps.java Thu Oct 26 17:04:09 2017 +0200 @@ -1,6 +1,6 @@ package org.openjdk.gcbench.yield; -import org.openjdk.gcbench.tests.UnderPressureTest; +import org.openjdk.gcbench.tests.UnderPressureAsyncTest; import org.openjdk.jmh.annotations.*; import org.openjdk.jmh.infra.Blackhole; @@ -13,7 +13,7 @@ @OutputTimeUnit(TimeUnit.NANOSECONDS) @Threads(Threads.MAX) @State(Scope.Benchmark) -public class Sleeps extends UnderPressureTest { +public class Sleeps extends UnderPressureAsyncTest { @Setup public void setup(Blackhole bh) {