Abstract
The numerical solution of the Kadanoff-Baym nonlinear integro-differential equations, which yields the non-equilibrium Green’s functions (NEGFs) of quantum many-body systems, poses significant computational challenges due to its high computational complexity. In this work, we present efficient implementations of a numerical method for solving these equations on distributed-memory architectures, including many-core CPUs and multi-GPU systems. For CPU-based platforms, we adopt a hybrid MPI + OpenMP programming model to exploit both inter-node and intra-node parallelism. On GPU-accelerated systems, we implement the method using two distinct approaches: MPI + OpenACC and MPI + CUDA FORTRAN. Several optimization strategies are employed to enhance GPU performance, including techniques to maximize computational resource utilization and minimize the overhead associated with kernel launches and memory management. Although OpenACC is easy to use, CUDA FORTRAN provides more advanced features for configuring and managing multiple levels of concurrency, while also simplifying memory allocation and data movement between host and device. This flexibility translates into significant performance improvements. For a representative problem with 1024 k-points, the GPU implementations accelerate the dominant self-energy calculation by more than two orders of magnitude relative to the CPU implementation, with speedups of 103 − 141× using OpenACC and 123 − 175× using CUDA FORTRAN. The collision-integral calculation is also substantially accelerated, achieving speedups of 36 − 45× with OpenACC and 45 − 52× with CUDA FORTRAN. We compare the performance of the three implementations and show that CUDA FORTRAN consistently outperforms OpenACC, achieving up to a 1.34× additional speedup over the best OpenACC configuration for the self-energy calculation. Furthermore, both CPU and GPU versions exhibit excellent strong and weak scaling, confirming the scalability and efficiency of our approach for large-scale NEGF computations.
Get full access to this article
View all access options for this article.
