• DocumentCode
    1783385
  • Title

    Optimizing Sparse Matrix-Multiple Vectors Multiplication for Nuclear Configuration Interaction Calculations

  • Author

    Aktulga, Hasan Metin ; Buluc, Aydin ; Williams, S. ; Chao Yang

  • Author_Institution
    Comput. Res. Div., Lawrence Berkeley Nat. Lab., Berkeley, CA, USA
  • fYear
    2014
  • fDate
    19-23 May 2014
  • Firstpage
    1213
  • Lastpage
    1222
  • Abstract
    Obtaining highly accurate predictions on the properties of light atomic nuclei using the configuration interaction (CI) approach requires computing a few extremal Eigen pairs of the many-body nuclear Hamiltonian matrix. In the Many-body Fermion Dynamics for nuclei (MFDn) code, a block Eigen solver is used for this purpose. Due to the large size of the sparse matrices involved, a significant fraction of the time spent on the Eigen value computations is associated with the multiplication of a sparse matrix (and the transpose of that matrix) with multiple vectors (SpMM and SpMM_T). Existing implementations of SpMM and SpMM_T significantly underperform expectations. Thus, in this paper, we present and analyze optimized implementations of SpMM and SpMM_T. We base our implementation on the compressed sparse blocks (CSB) matrix format and target systems with multi-core architectures. We develop a performance model that allows us to understand and estimate the performance characteristics of our SpMM kernel implementations, and demonstrate the efficiency of our implementation on a series of real-world matrices extracted from MFDn. In particular, we obtain 3-4 speedup on the requisite operations over good implementations based on the commonly used compressed sparse row (CSR) matrix format. The improvements in the SpMM kernel suggest we may attain roughly a 40% speed up in the overall execution time of the block Eigen solver used in MFDn.
  • Keywords
    configuration interactions; distributed memory systems; eigenvalues and eigenfunctions; many-body problems; matrix multiplication; nuclear structure theory; parallel processing; physics computing; sparse matrices; vectors; CI approach; CSB matrix format; CSR matrix format; MFDn code; SpMM kernel; SpMM_T; block eigen solver; compressed sparse block matrix format; compressed sparse row matrix format; distributed memory parallel approaches; eigen value computations; extremal eigen pairs; light atomic nuclei; many-body Fermion dynamics for nuclei code; many-body nuclear Hamiltonian matrix; nuclear configuration interaction calculation; performance model; sparse matrix-multiple vector multiplication optimization; Arrays; Bandwidth; Eigenvalues and eigenfunctions; Instruction sets; Sparse matrices; Vectors; Wave functions; Block Eigensolver; Extended Roofline Model; Nuclear Configuration Interaction; Sparse Matrix Multiplication;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium, 2014 IEEE 28th International
  • Conference_Location
    Phoenix, AZ
  • ISSN
    1530-2075
  • Print_ISBN
    978-1-4799-3799-8
  • Type

    conf

  • DOI
    10.1109/IPDPS.2014.125
  • Filename
    6877349