Hi all,
Over the weekend, I've been reading the JCIP and I've come up with a
list of improvements that I'm planning to implement for
SessionSimulatorTest:
- Use a CyclicBarrier to control read/write tasks start when all threads
are already up and running. Otherwise some taks could have head start
and begin before other tasks due to scheduling and this could affect the
results that we see.
- When measuring throughpuyt, we get more accurate measures by timing
the entire run and then dividing it by the number of operations to get a
per operation time. So, I'd suggest doing this rather than measuring
individual ops time. We can do this very easily using CyclicBarriers as
shown in JCIP.
- Currently, SessionSimulatorTest does not use the result of cache.get()
which is a bit unrealistic and could lead to the VM optimizing the
return path of the value. A recommended technique for getting around
this is recommended in the book.
- Finally, before warmup begins, we should add a check that the view of
the cluster is formed of the number of nodes that we're testing.
- Add an option to indicate the stress test timeout (currently
defaulting to 10 mins). This could be handy when profiling which leads
to longer execution times.
Thoughts?
--
Galder ZamarreƱo
Sr. Software Maintenance Engineer
JBoss, a division of Red Hat