SIPR: A new framework for generating efficient code for sparse matrix computations

被引:17
|
作者
Pugh, W [1 ]
Shpeisman, T [1 ]
机构
[1] Univ Maryland, Dept Comp Sci, College Pk, MD 20742 USA
关键词
D O I
10.1007/3-540-48319-5_14
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Developing computational codes that compute with sparse matrices is a difficult and error-prone process. Automatic generation of sparse code from the corresponding dense version would simplify the programmer's task, provided that a compiler-generated code is fast enough to be used instead of a hand-written code. We propose a new Sparse Intermediate Program Representation (SIPR) that separates the issue of maintaining complicated data structures from the actual matrix computations to be performed. Cost analysis of SIPR allows for the prediction of the program efficiency, and provides a solid basis for choosing efficient sparse implementations among many possible ones. The SIPR framework allows the use of techniques that are frequently used in the hand-written codes but previously were not considered for compiler-generated codes due to their complexity. We have developed tools that allow the automatic generation of efficient C++ implementations from SIPR, and describe experimental results on the performance of those implementations.
引用
收藏
页码:213 / 229
页数:17
相关论文
共 50 条
  • [1] Efficient algorithm for sparse matrix computations
    Park, S.C.
    Draayer, J.P.
    Zheng, S.-Q.
    Applied Computing: Technological Challenges of the 1990's, 1992, : 919 - 926
  • [2] A MATLAB-based code generator for sparse matrix computations
    Kawabata, H
    Suzuki, M
    Kitamura, T
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2004, 3302 : 280 - 295
  • [3] Accelerating SeisSol by Generating Vectorized Code for Sparse Matrix Operators
    Breuer, Alexander
    Heinecke, Alexander
    Bader, Michael
    Pelties, Christian
    PARALLEL COMPUTING: ACCELERATING COMPUTATIONAL SCIENCE AND ENGINEERING (CSE), 2014, 25 : 347 - 356
  • [4] On efficient sparse integer matrix Smith normal form computations
    Dumas, JG
    Saunders, BD
    Villard, G
    JOURNAL OF SYMBOLIC COMPUTATION, 2001, 32 (1-2) : 71 - 99
  • [5] SPARSE-MATRIX COMPUTATIONS
    REID, JK
    APPLICATIONS OF MATRIX THEORY, 1989, 22 : 101 - 121
  • [6] Efficient FCM Computations Using Sparse Matrix-Vector Multiplication
    Puheim, Michal
    Vascak, Jan
    Machova, Kristina
    2016 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN, AND CYBERNETICS (SMC), 2016, : 4165 - 4170
  • [7] Segmented Merge: A New Primitive for Parallel Sparse Matrix Computations
    Ji, Haonan
    Lu, Shibo
    Hou, Kaixi
    Wang, Hao
    Jin, Zhou
    Liu, Weifeng
    Vinter, Brian
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2021, 49 (05) : 732 - 744
  • [8] Segmented Merge: A New Primitive for Parallel Sparse Matrix Computations
    Haonan Ji
    Shibo Lu
    Kaixi Hou
    Hao Wang
    Zhou Jin
    Weifeng Liu
    Brian Vinter
    International Journal of Parallel Programming, 2021, 49 : 732 - 744
  • [9] A MATLAB-based code generator for parallel sparse matrix computations utilizing PSBLAS
    Sasaoka, Taiji
    Kawabata, Hideyuki
    Kitamura, Toshiaki
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2007, E90D (01) : 2 - 12
  • [10] Sparse matrix computations on reconfigurable hardware
    Prasanna, Viktor K.
    Morris, Gerald R.
    COMPUTER, 2007, 40 (03) : 58 - +