Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Effects of ordering strategies and programming paradigms on sparse matrix computations

Journal Article · · SIAM review
The conjugate gradient (CG) algorithm is perhaps the best-known iterative technique for solving sparse linear systems that are symmetric and positive definite. F or systems that are ill conditioned, it is often necessary to use a preconditioning technique. In this paper, we investigate the effects of various ordering and partitioning strategies on the performance of parallel CG and ILU(0) preconditioned CG (PCG) using different programming paradigms and architectures. Results show that for this class of applications, ordering significantly improves overall performance on both distributed and distributed shared memory systems, cache reuse may be more important than reducing communication, it is possible to achieve message-passing performance using shared-memory constructs through careful data ordering and distribution, and a hybrid MPI+OpenMP paradigm increases programming complexity with little performance gain. A multithreaded implementation of CG on the Cray MTA does not require special ordering or partitioning to obtain high efficiency and scalability, giving it a distinct advantage for adaptive applications; however, it shows limited scalability for PCG due to a lack of thread-level parallelism.
Research Organization:
Ernest Orlando Lawrence Berkeley National Laboratory, Berkeley, CA (US)
Sponsoring Organization:
USDOE Director. Office of Science. Office of Computational and Technology Research. Division of Mathematical Information and Computational Science (US)
DOE Contract Number:
AC03-76SF00098
OSTI ID:
825126
Report Number(s):
LBNL--53113
Journal Information:
SIAM review, Journal Name: SIAM review Journal Issue: 3 Vol. 44
Country of Publication:
United States
Language:
English