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

Description and references

null

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
-1 399988 521161 757797 1064636 242504 33848 ACCEPTABLE The value set by the actor thread. Observer sees the complete update.
42 2754430 3989637 2837701 3612222 3402774 163500 ACCEPTABLE The observer sees the empty shell. This is a legal JMM behavior, since there is a race between actor and observer.
OK OK OK OK OK OK

Auxiliary data