Multithreaded event-chain Monte Carlo with local times - Université PSL (Paris Sciences & Lettres)
Article Dans Une Revue Computer Physics Communications Année : 2021

Multithreaded event-chain Monte Carlo with local times

Résumé

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.
Fichier principal
Vignette du fichier
S0010465520303453.pdf (1.4 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03008349 , version 1 (13-02-2023)

Licence

Identifiants

Citer

Botao Li, Synge Todo, A. Maggs, Werner Krauth. Multithreaded event-chain Monte Carlo with local times. Computer Physics Communications, 2021, 261, pp.107702. ⟨10.1016/j.cpc.2020.107702⟩. ⟨hal-03008349⟩
73 Consultations
56 Téléchargements

Altmetric

Partager

More