|Title||Block locally optimal preconditioned eigenvalue Xolvers (BLOPEX) in Hypre and PETSc|
|Authors||Knyazev, A.V., Argentati, M.E., Lashuk, I. and Ovtchinnikov, E.|
We describe our software package Block Locally Optimal Preconditioned Eigenvalue Xolvers (BLOPEX) recently publicly released. BLOPEX is available as a stand-alone serial library, as an external package to PETSc (Portable, Extensible Toolkit for Scientific Computation, a general purpose suite of tools developed by Argonne National Laboratory for the scalable solution of partial differential equations and related problems), and is also built into hypre (High Performance Preconditioners, a scalable linear solvers package developed by Lawrence Livermore National Laboratory). The present BLOPEX release includes only one solver—the Locally Optimal Block Preconditioned Conjugate Gradient (LOBPCG) method for symmetric eigenvalue problems. hypre provides users with advanced high-quality parallel multigrid preconditioners for linear systems. With BLOPEX, the same preconditioners can now be efficiently used for symmetric eigenvalue problems. PETSc facilitates the integration of independently developed application modules, with strict attention to component interoperability, and makes BLOPEX extremely easy to compile and use with preconditioners that are available via PETSc. We present the LOBPCG algorithm in BLOPEX for hypre and PETSc. We demonstrate numerically the scalability of BLOPEX by testing it on a number of distributed and shared memory parallel systems, including a Beowulf system, SUN Fire 880, an AMD dual-core Opteron workstation, and IBM BlueGene/L supercomputer, using PETSc domain decomposition and hypre multigrid preconditioning. We test BLOPEX on a model problem, the standard 7-point finite-difference approximation of the 3-D Laplacian, with the problem size in the range of $10^5$-$10^8$.
|Keywords||BLOPEX, Beowulf, BlueGene, LOBPCG, PETSc, conjugate gradient, domain decomposition, eigenvalue, hypre, iterative method, multigrid, parallel computing, preconditioning|
|Journal||SIAM Journal on Scientific Computing|
|Journal citation||29 (5), pp. 2224-2239|
|Publisher||Society for Industrial and Applied Mathematics|
|Digital Object Identifier (DOI)||https://doi.org/10.1137/060661624|