Affiliation:
1. Sandia National Laboratories, Albequerque, NM
Abstract
We present the design of a high-performance object-oriented framework that enables the rapid development and usage of efficient, scalable, and portable implementations of multilevel preconditioners for distributed sparse real matrices, in both serial and (massively) parallel environments. The main feature of the proposed framework is the use of several programming paradigms for the different implementation layers, with a strong emphasis on object-oriented classes and operator overloading for the top layer, and optimized FORTRAN and C code for the layers underneath. We describe an implementation of the proposed framework that is based on the ML library, the algebraic multilevel preconditioning package of Trilinos, which supports state-of-the-art parallel smoothed aggregation methods, and can be used to define general algebraic and geometric multilevel and multigrid preconditioners and solvers. The article demonstrates that we can take advantage of object-oriented programming and operator overloading to obtain intuitive, easy-to-read, and easy-to-develop codes that are at the same time efficient and scalable. Several numerical experiments obtained on serial and parallel computers show that the overhead required by the object-oriented layer is very modest, therefore allowing developers to focus on the new algorithms they are developing and testing, rather than on implementation details.
Publisher
Association for Computing Machinery (ACM)
Subject
Applied Mathematics,Software
Cited by
4 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献