BCYCLIC: A parallel block tridiagonal matrix cyclic solver

  • Authors:
  • S. P. Hirshman;K. S. Perumalla;V. E. Lynch;R. Sanchez

  • Affiliations:
  • Oak Ridge National Laboratory, Oak Ridge, Tennessee 37830, USA;Oak Ridge National Laboratory, Oak Ridge, Tennessee 37830, USA;Oak Ridge National Laboratory, Oak Ridge, Tennessee 37830, USA;Oak Ridge National Laboratory, Oak Ridge, Tennessee 37830, USA

  • Venue:
  • Journal of Computational Physics
  • Year:
  • 2010

Quantified Score

Hi-index 31.45

Visualization

Abstract

A block tridiagonal matrix is factored with minimal fill-in using a cyclic reduction algorithm that is easily parallelized. Storage of the factored blocks allows the application of the inverse to multiple right-hand sides which may not be known at factorization time. Scalability with the number of block rows is achieved with cyclic reduction, while scalability with the block size is achieved using multithreaded routines (OpenMP, GotoBLAS) for block matrix manipulation. This dual scalability is a noteworthy feature of this new solver, as well as its ability to efficiently handle arbitrary (non-powers-of-2) block row and processor numbers. Comparison with a state-of-the art parallel sparse solver is presented. It is expected that this new solver will allow many physical applications to optimally use the parallel resources on current supercomputers. Example usage of the solver in magneto-hydrodynamic (MHD), three-dimensional equilibrium solvers for high-temperature fusion plasmas is cited.