skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: The Design and Implementation of hypre, a Library of Parallel High Performance Preconditioners

Journal Article · · Lecture Notes in Computational Science and Engineering
OSTI ID:875356

The increasing demands of computationally challenging applications and the advance of larger more powerful computers with more complicated architectures have necessitated the development of new solvers and preconditioners. Since the implementation of these methods is quite complex, the use of high performance libraries with the newest efficient solvers and preconditioners becomes more important for promulgating their use into applications with relative ease. The hypre library [14, 17] has been designed with the primary goal of providing users with advanced scalable parallel preconditioners. Issues of robustness, ease of use, flexibility and interoperability have also been important. It can be used both as a solver package and as a framework for algorithm development. Its object model is more general and flexible than most current generation solver libraries [9]. hypre also provides several of the most commonly used solvers, such as conjugate gradient for symmetric systems or GMRES for nonsymmetric systems to be used in conjunction with the preconditioners. Design innovations have been made to enable access to the library in the way that applications users naturally think about their problems. For example, application developers that use structured grids, typically think of their problems in terms of stencils and grids. hypre's users do not have to learn complicated sparse matrix structures; instead hypre does the work of building these data structures through various conceptual interfaces. The conceptual interfaces currently implemented include stencil-based structured and semi-structured interfaces, a finite-element based unstructured interface, and a traditional linear-algebra based interface. The primary focus of this paper is on the design and implementation of the conceptual interfaces in hypre. The paper is organized as follows. The first two sections are of general interest.We begin in Section 2 with an introductory discussion of conceptual interfaces and point out the advantages of matching the linear solver interface with the natural concepts (grids, stencils, elements, etc.) used in the application code discretization. In Section 3, we discuss hypre's object model, which is built largely around the notion of an operator. Sections 4-7 discuss specific conceptual interfaces available in hypre and include various examples illustrating their use. These sections are intended to give application programmers an overview of each specific conceptual interface. We then discuss some implementation issues in Section 8. This section may be of interest to applications programmers, or more likely, others interested in linear solver code development on large scale parallel computers. The next two sections are aimed at application programmers potentially interested in using hypre. Section 9 gives a brief overview of the solvers and preconditioners currently available in hypre, and Section 10 contains additional information on how to obtain and build the library. The paper concludes with some comments on future plans to enhance the library.

Research Organization:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Organization:
USDOE
DOE Contract Number:
W-7405-ENG-48
OSTI ID:
875356
Report Number(s):
UCRL-JRNL-205459; TRN: US200603%%97
Journal Information:
Lecture Notes in Computational Science and Engineering, Vol. 51
Country of Publication:
United States
Language:
English

Similar Records

Pursuing Scalability for hypre's Conceptual Interfaces
Journal Article · Wed Jul 21 00:00:00 EDT 2004 · ACM (Association for Computing Machinery) Transactions on Mathematical Software · OSTI ID:875356

hypre: A Library of High Performance Preconditioners
Conference · Thu Nov 01 00:00:00 EST 2001 · OSTI ID:875356

A New Semistructured Algebraic Multigrid Method
Journal Article · Thu Jun 29 00:00:00 EDT 2023 · SIAM Journal on Scientific Computing · OSTI ID:875356