New image reconstruction framework using sparse matrix-vector multiplication outperforms state-of-the-art methods

Fig. 1: Example of reconstructed slice from microCT data using iRadon and TV algorithms. Image courtesy S. Marchesini, A. Trivedi, P. Enfedaque, T. Perciano, D. Parkinson.

Scientific Achievement

Development of new image reconstruction framework using sparse matrix-vector multiplication and exploiting multi-CPU/GPU over MPI that (1) outperforms state-of-the-art algorithm by a factor of 175x when reconstructing an experimental dataset and (2) leads to better quality reconstructions [1].

Significance and Impact

Several image-based experiments across DOE depend on image reconstruction techniques that can handle large and complex data efficiently. This work shows a way to explore sparse matrix-vector multiplication and multi-CPU/GPU over MPI to obtain performance/quality gains and platform portability.

Research Results

  • Image reconstruction algorithm is implemented in Python and relies on CuPy for fast GPU operators and CUDA kernel integration, and on SciPy for CPU sparse matrix computation.
  • The framework is based on a parallel Fubini-Radon transform and it is used to implement popular reconstruction algorithms including FBP, SIRT, CGSL, and TV.
  • SIRT implementation uses the Hamming preconditioning and the BB-step acceleration providing a 10-fold convergence rate speedup and makes it comparable to the conjugate gradient method but with fewer reductions and lower memory footprint.
  • Proposed software is designed to provide flexible, portable, and high-performance operators.

Contact

Bibliography

  1. S. Marchesini, A. Trivedi, P. Enfedaque, T. Perciano, and D. Parkinson, “Sparse Matrix-Based HPC Tomography,” in Computational Science – ICCS 2020, Cham, pp. 248–261, Jun. 2020.