org.openjdk.jcstress.tests.atomicity.primitives.reflect.VolatileFloatAtomicityTest

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
0.0 34965 15122 64765 11286 83757 35726 ACCEPTABLE Default value for the field. Observers are allowed to see the default value for the field, because there is the data race between reader and writer.
NaN 3358633 4314636 3842713 1991492 1949981 53052 ACCEPTABLE The value set by the actor thread. Observer sees the complete update.
OK OK OK OK OK OK

Auxiliary data