Skip to content

Some Improvements on Locking

Simon Spannagel requested to merge p/stat_locking into master

This is the result of a nice study by @jisaidi, with very lightweight events we see some overlocking in APSQ core. Essentially all these locks can be avoided by writing smarter code. All are related to either logging or plotting.

Here some benchmarks, scaling the number of workers on a duals-socket AMD EPYC 7402 2x24-core, 2x48-thread CPU with a benchmark simulation kindly provided by the 100uPET project via @jisaidi and @mvicente. The legend indicates the commits used for the different measurements.

image

(It should be noted that f8ef274f is not actually faster than c65f3806 but it corrects the calculation of the event generation frequency to remove setup cost time which becomes especially relevant if the same 400k event run only takes a few seconds on 96 workers.

Edited by Simon Spannagel

Merge request reports