Parallelization, processor communication and error analysis in lattice kinetic Monte Carlo

Giorgos Arampatzis,Markos A. Katsoulakis,Petr Plechac
DOI: https://doi.org/10.48550/arXiv.1208.1049
2012-08-06
Abstract:In this paper we study from a numerical analysis perspective the Fractional Step Kinetic Monte Carlo (FS-KMC) algorithms proposed in [1] for the parallel simulation of spatially distributed particle systems on a lattice. FS-KMC are fractional step algorithms with a time-stepping window $\Delta t$, and as such they are inherently partially asynchronous since there is no processor communication during the period $\Delta t$. In this contribution we primarily focus on the error analysis of FS-KMC algorithms as approximations of conventional, serial kinetic Monte Carlo (KMC). A key aspect of our analysis relies on emphasising a goal-oriented approach for suitably defined macroscopic observables (e.g., density, energy, correlations, surface roughness), rather than focusing on strong topology estimates for individual trajectories. One of the key implications of our error analysis is that it allows us to address systematically the processor communication of different parallelization strategies for KMC by comparing their (partial) asynchrony, which in turn is measured by their respective fractional time step $\Delta t$ for a prescribed error tolerance.
Numerical Analysis
What problem does this paper attempt to address?
### What problems does this paper attempt to solve? This paper aims to study the parallel Fractional Step Kinetic Monte Carlo (FS - KMC) algorithms from the perspective of numerical analysis. These algorithms are used for parallel computing in simulating particle systems distributed on lattices, especially for applications in multi - processor architectures. Specifically, the paper mainly focuses on the following aspects: 1. **Parallelization and Processor Communication**: - Research on how to parallelize the traditional serial KMC algorithm to improve the efficiency of large - scale particle system simulations. - Explore the partial asynchrony in different parallelization strategies, that is, the situation where there is no processor communication within the time - step window \(\Delta t\). 2. **Error Analysis**: - Conduct error analysis on the FS - KMC algorithm as an approximation of the traditional serial KMC algorithm. - Emphasize the goal - oriented error analysis method, focusing on well - defined macroscopic observable physical quantities (such as density, energy, correlation, surface roughness), rather than strong topological estimation of individual trajectories. 3. **Balancing Accuracy and Communication Overhead**: - Explore the maximum allowable \(\Delta t\) under a given error tolerance to reduce the communication requirements between processors. - Balance the relationship between the accuracy of the algorithm and processor communication, thereby optimizing the efficiency of parallel computing. 4. **Mathematical Framework and Numerical Methods**: - Propose a space - time decomposition method based on the Trotter product formula to construct a parallel KMC algorithm. - Use Markov semigroup theory and operator splitting methods to develop a hierarchical structure algorithm suitable for modern parallel architectures. ### Formula Summary - **Local Update Mechanism and Transition Rate**: \[ P(\sigma_{t+\delta t}=\sigma_{x,\omega}\mid\sigma_t = \sigma)=c(x,\omega;\sigma)\delta t+o(\delta t) \] - **Total Transition Rate**: \[ \lambda(\sigma)=\sum_{x\in\Lambda_N}\sum_{\omega\in S_x}c(x,\omega;\sigma) \] - **Transition Probability of the Embedded Markov Chain**: \[ p(\sigma,\sigma_{x,\omega})=\frac{c(x,\omega;\sigma)}{\lambda(\sigma)} \] - **Forward Kolmogorov Equation (Master Equation)**: \[ \frac{\partial}{\partial t}P(\sigma,t;\zeta)=\sum_{\sigma'\neq\sigma}c(\sigma',\sigma)P(\sigma',t;\zeta)-\lambda(\sigma)P(\sigma,t;\zeta) \] - **Definition of Generator \(L\)**: \[ Lf(\sigma)=\sum_{x\in\Lambda_N}\sum_{\omega\in S_x}c(x,\omega;\sigma)[f(\sigma_{x,\omega})-f(\sigma)] \] - **Fractional Step Approximation**: \[ e^{T L}\approx P_L:=\left[e^{\Delta t L_1}e^{\Delta t L_2}\right]^n,\quad\text{where}\quad\Delta t=\frac{T}{n} \] Through these