Benchmark keeps running (original) (raw)
Yann Le Tallec ylt at letallec.org
Tue May 7 20:21:39 PDT 2013
- Previous message: hg: code-tools/jmh: Make Option constructiors protected.
- Next message: Benchmark keeps running
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hello,
I am probably missing something obvious but the bechmark below only works with one thread. When using 2 or more threads, it gets stuck during the first warmup iteration.
@OutputTimeUnit(TimeUnit.NANOSECONDS) public class CAS {
@State(Scope.Benchmark)
public static class AIState {
private final AtomicInteger ai = new AtomicInteger();
}
@GenerateMicroBenchmark(BenchmarkType.AverageTimePerOp)
public int cas(CAS.AIState state) {
int i = state.ai.get();
while (!state.ai.compareAndSet(i, i + 1)) { }
return state.ai.get();
}
}
I run it with: java -jar microbenchmarks.jar ".CAS." -wi 5 -w 200ms -i 5 -r 200ms -t 1 (and -t 2 for 2 threads respectively).
Many thanks, Yann
- Previous message: hg: code-tools/jmh: Make Option constructiors protected.
- Next message: Benchmark keeps running
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]