Java Grande Benchmark Updated False Sharing Results
False sharing was detected on the following benchmarks:
- Barrier:
TournamentBarrier.IsDone: 309035 (24.6% of accesses)
Counter.shared_cont: 7882 (2.25% of writes)
See here for a comparison of the performance with and without false sharing.
- Sync:
CounterClass.shared_cont: 36 (insignificant)
- LUFact:
lufact.TournamentBarrier.IsDone: 160795 (16.6% of accesses)
No false sharing was detected on the following: SOR, Series, Crypt and ForkJoin.
Not tested (yet): SparseMatmult, MonteCarlo, MolDyn and RayTracer. The last two of these benchmarks use TournamentBarrier, so some false sharing is expected on IsDone there.
Benchmarks were run on 4 threads (same as number of CPUs) and false sharing was analyzed with trace windows of size 100, one window per cache line.