Mixed Precision Block-Jacobi Preconditioner: Algorithms, Performance Evaluation and Feature Analysis

Ningxi Tian,Silu Huang,Xiaowen Xu
2024-10-15
Abstract:In this paper, we propose two mixed precision algorithms for Block-Jacobi preconditioner(BJAC): a fixed low precision strategy and an adaptive precision strategy. We evaluate the performance improvement of the proposed mixed precision BJAC preconditioners combined with the preconditioned conjugate gradient algorithm using problems including diffusion equations and radiation hydrodynamics equations. Numerical results show that, compared to the uniform high precision PCG algorithm, the mixed precision preconditioners can achieve speedups from 1.3 to 1.8 without sacrificing accuracy. Furthermore, we observe the phenomenon of convergence delay in some test cases for the mixed precision preconditioners, and further analyse the matrix features associate with the convergence delay behavior.
Numerical Analysis,Mathematical Software
What problem does this paper attempt to address?
### What problems does this paper attempt to solve? This paper aims to solve the problem of how to improve the performance of the preconditioned conjugate gradient (PCG) method through mixed - precision techniques while maintaining computational accuracy in the process of solving large - scale sparse linear systems. Specifically: 1. **Improve computational efficiency**: The paper proposes two mixed - precision algorithms for the block Jacobi preconditioner (BJAC), namely the fixed - low - precision strategy and the adaptive - precision strategy. These strategies aim to reduce computational costs, memory storage requirements, data movement overhead, and energy consumption. 2. **Maintain computational accuracy**: Although low - precision formats are used, the paper ensures that these mixed - precision preconditioners do not lose computational accuracy. Experimental results show that when dealing with problems such as diffusion equations and radiation hydrodynamics equations, compared with the traditional high - precision PCG method, the mixed - precision preconditioners can achieve a 1.3 - to - 1.8 - fold speedup. 3. **Analyze the convergence delay phenomenon**: The paper also explores the convergence delay phenomenon that may be caused by mixed - precision preconditioners and analyzes the correlation between matrix characteristics and convergence - delay behavior. The authors draw some meaningful conclusions about designing more efficient mixed - precision preconditioners. ### Specific content - **Background and motivation**: - Solving large - scale sparse linear systems is a key challenge in scientific and engineering computing, especially in practical simulations such as laser fusion, complex fluid dynamics, structural mechanics, and electronic systems. - Preconditioned Krylov subspace methods are widely used in solving sparse linear systems, and the design and optimization of preconditioners are crucial to improving the performance of these methods. - **Proposed solutions**: - Propose two mixed - precision block Jacobi preconditioners: the fixed - low - precision strategy (fMP - BJAC) and the adaptive - precision strategy (aMP - BJAC). - Apply these preconditioners in the PCG method and evaluate their performance improvements. - **Experimental results**: - Experimental results show that the mixed - precision preconditioners can significantly improve the solution speed without losing accuracy. - Observe the convergence delay phenomenon in some test cases and conduct a detailed analysis. ### Conclusions By introducing mixed - precision techniques, the paper successfully improves the performance of the block Jacobi preconditioner while maintaining computational accuracy. In addition, the authors also find the association between matrix characteristics and convergence - delay behavior, providing a valuable reference for designing more efficient mixed - precision preconditioners in the future. ### Mathematical formulas - **Definition of block Jacobi preconditioner**: \[ M^{-1}_{bjac}=\sum_{j = 0}^{k - 1}(I - D_b^{-1}A)^jD_b^{-1} \] where \(I\) is the identity matrix, \(k\) is the number of iterations, and \(D_b=\text{diag}\{A_{ii},i = 1,2,\ldots,n_b\}\) is a diagonal block matrix. - **Approximate block Jacobi preconditioner**: \[ \hat{M}^{-1}_{bjac}=\sum_{j = 0}^{k - 1}(I - \hat{D}_b^{-1}A)^j\hat{D}_b^{-1} \] - **Mixed - precision block Jacobi preconditioner**: - Fixed - low - precision strategy (fMP - BJAC): \[ z=\text{ConvertPrecision}(M^{-1}_{bjac}(p_l)\cdot\hat{r},p_w) \] - Adaptive - precision strategy (aMP - BJAC): \[ \text{if }\text{relres}\geq\text{adptol}\text{ then }z = M^{-1}_{bjac}\cdot r\text{ else }z = fMP - BJAC(M^{-1}_{bjac}(p_l),r,p_w,p_l) \] Through these formulas and analysis, the paper shows how to effectively use mixed - precision techniques to optimize the block Jacobi preconditioner.