Parallel implementation of the s-step conjugate gradient method

Abstract

The conjugate gradient (CG) method is one of the most widely used algorithms for solving large sparse systems of linear equations with symmetric positive definite matrices. In massively parallel computing, however, the efficiency of this method is often limited by high latency resulting from the need for global synchronization in every iteration. One approach to overcome this is the use of the so-called s-step variant of the CG method. Its core principle lies in restructuring the computation to group multiple iterations into a single block, thereby minimizing the number of synchronization points and overall network communication. This bachelor's thesis focuses on the design and efficient parallel implementation of the s-step conjugate gradient method. The performance, scaling limits, and numerical stability of the developed solver are subsequently experimentally verified on a selected set of matrices using the LUMI supercomputer.

Description

Delayed publication

Available after

Subject(s)

parallel iterative solvers, conjugate gradients, s-step CG, communication-avoiding algorithms, PETSc, high-performance computing

Citation