org.openjdk.jcstress.tests.init.primitives.fenced.DoubleFencedTest

Description and references

null

http://docs.oracle.com/javase/specs/jls/se7/html/jls-17.html#jls-17.7

Environment

java.specification.name Java Platform API Specification
java.specification.vendor Oracle Corporation
java.specification.version 10
java.vendor Oracle Corporation
java.version 10-internal
java.vm.name OpenJDK 64-Bit Server VM
java.vm.vendor Oracle Corporation
java.vm.version 10-internal+0-adhoc.buildslave.jdk10
os.arch aarch64
os.name Linux
os.version 4.4.0-63-generic

Test configurations

TC 1 JVM options: [] Iterations: 5 Time: 200
TC 2 JVM options: [-XX:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200
TC 3 JVM options: [-XX:-TieredCompilation] Iterations: 5 Time: 200
TC 4 JVM options: [-XX:-TieredCompilation, -XX:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200
TC 5 JVM options: [-XX:TieredStopAtLevel=1] Iterations: 5 Time: 200
TC 6 JVM options: [-Xint] Iterations: 5 Time: 200

Observed states

Observed state TC 1 TC 2 TC 3 TC 4 TC 5 TC 6 Expectation Interpretation
42.0 4036719 1925026 3664018 2602836 1951718 61965 ACCEPTABLE The observer sees the empty shell. This is a legal JMM behavior, since there is a race between actor and observer.
NaN 272359 147762 773200 454272 165330 33533 ACCEPTABLE The value set by the actor thread. Observer sees the complete update.
OK OK OK OK OK OK

Auxiliary data