It runs fine in IcedTea Zero and IcedTea JamVM using the -zero and -jamvm options.
Thanks,
Richard.
ubuntu@ubuntu:~/src/jmh/jmh-samples$ java -jar target/benchmarks.jar -v EXTRA -jvmArgs -avian -i 1 org.openjdk.jmh.samples.JMHSample_11_Loops.measureRight
# VM invoker: /usr/lib/jvm/java-7-openjdk-armhf/jre/bin/java
# VM options: -avian
# Warmup: 20 iterations, 1 s each
# Measurement: 1 iterations, 1 s each
# Timeout: 10 min per iteration
# Threads: 1 thread, will synchronize iterations
# Benchmark mode: Average time, time/op
# Benchmark: org.openjdk.jmh.samples.JMHSample_11_Loops.measureRight
Forking 10 times using command: [/usr/lib/jvm/java-7-openjdk-armhf/jre/bin/java, -avian, -XX:CompileCommandFile=/tmp/jmh7265095391005671506compilecommand, -cp, target/benchmarks.jar, org.openjdk.jmh.runner.ForkedMain, 127.0.0.1, 50488]
# Run progress: 0.00% complete, ETA 00:03:30
# Fork: 1 of 10
# Warmup Iteration 1: <binary link had failed, forked VM corrupted the stream? Use EXTRA verbose to print exception>
java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2598)
at java.io.ObjectInputStream.skipCustomData(ObjectInputStream.java:1944)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1620)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1663)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1344)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
at java.util.ArrayList.readObject(ArrayList.java:771)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1706)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1344)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
at org.openjdk.jmh.runner.link.BinaryLinkServer$Handler.run(BinaryLinkServer.java:254)<forked VM failed with exit code 134>
<stdout last='20 lines'>
</stdout>
<stderr last='20 lines'>
</stderr>
# Run complete. Total time: 00:00:00
http://hg.openjdk.java.net/code-tools/jmh/file/2856725c3a81/jmh-core/src/main/java/org/openjdk/jmh/runner/link/BinaryLinkServer.java