HAL will be down for maintenance from Friday, June 10 at 4pm through Monday, June 13 at 9am. More information
Skip to Main content Skip to Navigation
Journal articles

Multithreaded event-chain Monte Carlo with local times

Abstract : We present a multithreaded event-chain Monte Carlo algorithm (ECMC) for hard spheres. Threads synchronize at infrequent breakpoints and otherwise scan for local horizon violations. Using a mapping onto absorbing Markov chains, we rigorously prove the correctness of a sequential-consistency implementation for small test suites. On x86 and ARM processors, a C++ (OpenMP) implementation that uses compare-and-swap primitives for data access achieves considerable speed-up with respect to single-threaded code. The generalized birthday problem suggests that for the number of threads scaling as the square root of the number of spheres, the horizon-violation probability remains small for a fixed simulation time. We provide C++ and Python open-source code that reproduces all our results.
Document type :
Journal articles
Complete list of metadata

Contributor : Anthony Maggs Connect in order to contact the contributor
Submitted on : Monday, November 16, 2020 - 5:33:55 PM
Last modification on : Thursday, November 18, 2021 - 4:58:02 PM

Links full text




Botao Li, Synge Todo, A. Maggs, Werner Krauth. Multithreaded event-chain Monte Carlo with local times. Computer Physics Communications, Elsevier, 2020, pp.107702. ⟨10.1016/j.cpc.2020.107702⟩. ⟨hal-03008349⟩



Record views