Research on tridiagonal matrix solver design based on a combination of processors. (August 2017) - Li, Jingmei; Zheng, Zhigao; Tian, Qiao; Zhang, Guoyin; Zheng, Fangyuan; Pan, Yuanyuan
Abstract: Large-scale tridiagonal matrix solvers based on heterogeneous systems currently cannot balance computational efficiency and numerical stability when solving a non-diagonally dominant matrix. A tridiagonal solver combined central processing unit with graphics processing unit is proposed, based on SPIKE 2 as a solver framework, a simplified SPIKE algorithm as a central processing unit component, and a diagonal pivot algorithm as a graphics processing unit component. The solver performance is further improved by using a data-layout-transformation mechanism to obtain continuous addresses, reducing memory communication using constant memory to store unchanged data in the calculation process, and employing a kernel-fusion mechanism to reduce power consumption of graphics processing unit. For a diagonally dominant matrix, extended Thomas algorithms and cycle reduction to replace the graphics processing unit component are proposed in the solver. Experimental results show that the tridiagonal matrix solver in this paper can effectively consider both numerical stability and computational efficiency, and reduce total power consumption while improving memory efficiency.