论文标题

多线程事件链蒙特卡洛与当地时代

Multithreaded event-chain Monte Carlo with local times

论文作者

Li, Botao, Todo, Synge, Maggs, A. C., Krauth, Werner

论文摘要

我们提出了用于硬球的多线程链蒙特卡洛算法(ECMC)。线程在不经常的断点上同步,以否则扫描局部违规行为。使用映射到吸收马尔可夫连锁店,我们严格地证明了针对小型测试套件的连续性实现的正确性。在X86和ARM处理器上,使用比较和S-wap原始图的C ++(OpenMP)实现数据访问可以相对于单线线程代码的加速。广义生日问题表明,对于螺纹缩放的数量,作为球体数量的平方根,在固定的模拟时间内,地平线侵入概率仍然很小。我们提供C ++和Python开源代码,可再现我们的所有结果。

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.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源