Speedup of the Metropolis protocol via algorithmic optimization

Journal of Computational Science(2023)

引用 0|浏览7
暂无评分
摘要
The Metropolis algorithm is widely used in Monte Carlo (MC) simulations in diverse areas of science and technology, especially for problems formulated in terms of lattice models. A common situation is the necessity to perform long sequential processing, e.g., when looking for equilibrium states of distinct physical systems. Hence, even marginal increases in efficiency of the algorithm individual steps can lead to significant reductions in absolute execution runtimes. Usual speedup procedures include hardware updates, parallelization (when possible) and sampling methods. Here we follow a different direction in trying to decrease the full execution times of MC approaches: algorithmic optimization. We show that the algorithms can be improved by implementing relatively few and simple changes in their organization and structure. First, we discuss some refinements for the pseudo-random number generator, addressing the broadly employed Mersenne-Twister algorithm (MT19937-64). Second, we develop a protocol to precalculate the Boltzmann factor, thereby avoiding the high cost of repeatedly calls to this exponential function (indeed, a very recurring step in the standard Metropolis method). To benchmark our proposals we choose the Ising model since it is one of the best known and more extensively studied problems in statistical physics. We consider the mentioned optimizations and different computational elements, like compilers and Hamiltonian variables ranges, testing the efficiency to obtain the system solutions. Our results suggest that the present set of improvement schemes—namely; decreasing the processing time for both, to generate a random number and to implement the one-flip Metropolis step; systematically enforcing optimization for the maximum quantity of algorithm structures accessing random numbers in a code; and considerably reducing the amount of required computations of the MC probabilistic actualization term—might constitute a relevant addition to the existing collection of expediting techniques in MC computational routines.
更多
查看译文
关键词
00-01,99-00
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要