Object-Oriented Design for Sparse Direct Solvers
Author(s) -
Florin Dobrian,
G Kumfert,
Alex Pothen
Publication year - 1998
Publication title -
lecture notes in computer science
Language(s) - English
Resource type - Book series
SCImago Journal Rank - 0.249
H-Index - 400
eISSN - 1611-3349
pISSN - 0302-9743
DOI - 10.1007/3-540-49372-7_22
Subject(s) - computer science , flexibility (engineering) , extensibility , object oriented programming , object (grammar) , software , object oriented design , computational science , programming language , theoretical computer science , computer engineering , parallel computing , engineering drawing , artificial intelligence , mathematics , statistics , engineering
We discuss the object-oriented design of a software package for solving sparse, symmetric systems of equations (positive definite and indefinite) by direct methods. At the highest layers, we decouple data structure classes from algorithmic classes for flexibility. We describe the important structural and algorithmic classes in our design, and discuss the trade-offs we made for high performance. The kernels at the lower layers were optimized by hand. Our results show no performance loss from our object-oriented design, while providing flexibility, ease of use, and extensibility over solvers using procedural design.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom