Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Cache-Oblivious Sparse Matrix-Vector Multiplication by Using Sparse Matrix Partitioning Methods

Published: 01 July 2009 Publication History
  • Get Citation Alerts
  • Abstract

    In this article, we introduce a cache-oblivious method for sparse matrix-vector multiplication. Our method attempts to permute the rows and columns of the input matrix using a recursive hypergraph-based sparse matrix partitioning scheme so that the resulting matrix induces cache-friendly behavior during sparse matrix-vector multiplication. Matrices are assumed to be stored in row-major format, by means of the compressed row storage (CRS) or its variants incremental CRS and zig-zag CRS. The zig-zag CRS data structure is shown to fit well with the hypergraph metric used in partitioning sparse matrices for the purpose of parallel computation. The separated block-diagonal (SBD) form is shown to be the appropriate matrix structure for cache enhancement. We have implemented a run-time cache simulation library enabling us to analyze cache behavior for arbitrary matrices and arbitrary cache properties during matrix-vector multiplication within a $k$-way set-associative idealized cache model. The results of these simulations are then verified by actual experiments run on various cache architectures. In all these experiments, we use the Mondriaan sparse matrix partitioner in one-dimensional mode. The savings in computation time achieved by our matrix reorderings reach up to 50 percent, in the case of a large link matrix.

    Cited By

    View all
    • (2023)DASP: Specific Dense Matrix Multiply-Accumulate Units Accelerated General Sparse Matrix-Vector MultiplicationProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/3581784.3607051(1-14)Online publication date: 12-Nov-2023
    • (2023)Bringing Order to Sparsity: A Sparse Matrix Reordering Study on Multicore CPUsProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/3581784.3607046(1-13)Online publication date: 12-Nov-2023
    • (2021)ALTOProceedings of the 35th ACM International Conference on Supercomputing10.1145/3447818.3461703(404-416)Online publication date: 3-Jun-2021
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image SIAM Journal on Scientific Computing
    SIAM Journal on Scientific Computing  Volume 31, Issue 4
    June 2009
    797 pages

    Publisher

    Society for Industrial and Applied Mathematics

    United States

    Publication History

    Published: 01 July 2009

    Author Tags

    1. cache-oblivious
    2. matrix-vector multiplication
    3. parallel computing
    4. recursive bipartitioning
    5. sparse matrix

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 27 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)DASP: Specific Dense Matrix Multiply-Accumulate Units Accelerated General Sparse Matrix-Vector MultiplicationProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/3581784.3607051(1-14)Online publication date: 12-Nov-2023
    • (2023)Bringing Order to Sparsity: A Sparse Matrix Reordering Study on Multicore CPUsProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/3581784.3607046(1-13)Online publication date: 12-Nov-2023
    • (2021)ALTOProceedings of the 35th ACM International Conference on Supercomputing10.1145/3447818.3461703(404-416)Online publication date: 3-Jun-2021
    • (2020)HYRAQProceedings of the 24th Symposium on International Database Engineering & Applications10.1145/3410566.3410582(1-10)Online publication date: 12-Aug-2020
    • (2020)A Recursive Algebraic Coloring Technique for Hardware-efficient Symmetric Sparse Matrix-vector MultiplicationACM Transactions on Parallel Computing10.1145/33997327:3(1-37)Online publication date: 29-Jun-2020
    • (2020)A novel data transformation and execution strategy for accelerating sparse matrix multiplication on GPUsProceedings of the 25th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3332466.3374546(376-388)Online publication date: 19-Feb-2020
    • (2019)Adaptive sparse tiling for sparse matrix multiplicationProceedings of the 24th Symposium on Principles and Practice of Parallel Programming10.1145/3293883.3295712(300-314)Online publication date: 16-Feb-2019
    • (2019)Spatiotemporal Graph and Hypergraph Partitioning Models for Sparse Matrix-Vector Multiplication on Many-Core ArchitecturesIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2018.286472930:2(445-458)Online publication date: 1-Feb-2019
    • (2016)A data locality-aware design framework for reconfigurable sparse matrix-vector multiplication kernel2016 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)10.1145/2966986.2966987(1-6)Online publication date: 7-Nov-2016
    • (2016)Optimizing Sparse Matrix-Vector Multiplication for Large-Scale Data AnalyticsProceedings of the 2016 International Conference on Supercomputing10.1145/2925426.2926278(1-12)Online publication date: 1-Jun-2016
    • Show More Cited By

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media