Spark98: Sparse Matrix Kernels for Shared Memory and Message Passing Systems

Abstract

Spark98 is a collection of sparse matrix kernels for shared memory and message passing systems. Our aim is to provide system builders with a set of example sparse matrix codes that are simple, realistic, and portable. Each kernel performs a sequence of sparse matrix vector product operations using matrices that are derived from a family of three dimensional finite element earthquake applications. We describe the computational structure of the kernels, summarize their performance on a parallel system, and discuss some of the insights that such kernels can provide. In particular we notice that efficient parallel programming of sparse codes requires careful partitioning of data references, regardless of the underlying memory system. So on one hand, efficient shared memory programs can be just as difficult to write as efficient message passing programs. On the other hand, shared memory programs are not necessarily less efficient than message passing programs.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 08, 1997
Accession Number
ADA331453

Entities

People

  • David R. O'hallaron

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Algorithms
  • Coefficients
  • Communication Systems
  • Computational Fluid Dynamics
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Earthquakes
  • Floating Point Operations
  • Fluid Dynamics
  • Frequency
  • Simulations
  • Sparse Matrix
  • Stiffness
  • Symmetry
  • Three Dimensional

Fields of Study

  • Computer science
  • Engineering

Readers

  • Educational Psychology
  • Linear Algebra
  • Parallel and Distributed Computing.