JCStress 0.10

Aleksey Shipilev shade at redhat.com
Fri Apr 30 09:55:41 UTC 2021


JCStress 0.10 is released and available on Maven Central. This is useful for those who use
JCStress as Maven dependency. This release improves harness reliability and testing performance.

It comes with the following improvements and bugfixes:

  *) Reliability: CPU topology parsers now better handle a few unusual configurations seen in cloud 
   7902900: jcstress: Sysfs topology parser should accept non-consecutive package IDs
   7902909: jcstress: Sysfs topology parser should accept duplicate core IDs in different packages

  *) Reliability: harness tries to measure the footprint of test code to avoid OOME. Unfortunately, 
it does so by running actors in the same thread, which violates the basic testing contract. It was 
seen to deadlock some mutex tests.
   7902908: jcstress: Rework footprint sanity checking code

  *) Performance: changes introduced in 0.9 were not able to cope with lots of scheduling requests, 
especially with small test runtimes, i.e. in "sanity" mode. It should be orders of magnitude better now.
   7902905: jcstress: Improve scheduling performance
   7902904: jcstress: Explicit waits for VM shutdowns

  *) Performance: improving the infrastructure overheads, especially for smaller tasks
   7902901: jcstress: Buffer infrastructure socket connections
   7902906: jcstress: Simplify forked executors
   7902910: jcstress: Avoid creating lots of temporary files

  *) Performance: "sanity" preset mode is there to test harness infrastructure, so there is no need 
to run the actual test code more than once per harness test path
   7902903: jcstress: Optimize sanity preset mode

  *) UX: Stop scaring users with "failed" lines from the innocuous probing code
   7902907: jcstress: Change "FAILED" to "N/A" in probing code



More information about the jcstress-dev mailing list