Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Using dense storage to solve small sparse linear systems
Morandini M., Mantegazza P. ACM Transactions on Mathematical Software33 (1):5-es,2007.Type:Article
Date Reviewed: May 30 2007

Linear systems of equations are used in many areas of engineering, science, and business. These systems may have thousands, even millions, of equations, but usually only a very small number of unknowns are used in one equation. Solving such equations is computationally demanding, requiring a significant amount of memory and processing time. Many solvers have been proposed to approach the problem efficiently.

The authors develop a general solver designed to efficiently solve a system of up to 3,000 linear equations. The proposed solver uses six interrelated matrices: four two-dimensional matrices--one to store matrix elements, two to store nonzero element indices, and one to indicate whether a particular matrix cell stores a nonzero element--and two one-dimensional matrices to count the nonzero elements in rows and columns. Such a system of matrices requires almost 150 megabytes of memory to store information for about 3,000 equations. The authors provide C code for four functions, including a function to perform a sparse Gaussian factorization with threshold partial pivoting, which significantly reduces the number of operations by looping only over nonzero elements, and a function to find a pivoting row. The authors also briefly describe a multithreaded version of their solver.

Most of the paper is devoted to an extensive comparison of sample runs between the proposed solver and three solvers designed for sparse matrices with a large number of equations. The proposed solver is faster than other systems; however, a multithreaded version does not generally offer better timing for sparse matrix systems.

Reviewer:  Adam Drozdek Review #: CR134338 (0804-0386)
Bookmark and Share
 
Documentation (G.4 ... )
 
 
Algorithm Design And Analysis (G.4 ... )
 
 
Arrays (E.1 ... )
 
 
Sparse, Structured, And Very Large Systems (Direct And Iterative Methods) (G.1.3 ... )
 
 
Numerical Linear Algebra (G.1.3 )
 
 
Data Structures (E.1 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Documentation": Date
Designing electronic reference documentation for software component libraries
Berglund E. Journal of Systems and Software 68(1): 65-75, 2003. Type: Article
Feb 9 2004

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy