org.openjdk.jcstress.tests.volatiles.VolatileIncrementAtomicityTest

null

JVM options: [-client] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 30851 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 798020 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 921649 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-XX:TieredStopAtLevel=1] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 28851 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 719955 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 257924 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-client, -XX:-TieredCompilation] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 10051 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 739952 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 698197 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-server, -XX:-TieredCompilation] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 19013 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 258291 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 212976 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-server] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 25950 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 560816 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 452744 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-server, -XX:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 18739 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 1350852 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 552749 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-server, -XX:-TieredCompilation, -XX:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 13722 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 514290 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 669808 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.

JVM options: [-Xint] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
1, 1 33 ACCEPTABLE_INTERESTING Each thread sees the same value, regardless of the update. One update is lost.
1, 2 6480 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.
2, 1 33627 ACCEPTABLE Each thread sees its own increment, as if the increment is atomic.