The Scalable Library for Eigenvalue Problem Computations (SLEPc) is provided at NERSC on Hopper and Edison. Specifically, we provide SLEPc builds that closely integrate with the optimized PETSc builds provided by Cray, and provide versions that make use of either the real or complex definitions of PetscScalar.
Using SLEPc on Hopper
On Hopper, the current default version of the "slepc" module directly tracks the default version of the "cray-petsc" module (and likewise for "slepc-complex" and "cray-petsc-complex"). Both modules must be loaded in order to make use of SLEPc. Thus, for "real" PetscScalar type support, you will want to run:
> module load cray-petsc
> module load slepc
at which point both the PETSC_DIR and SLEPC_DIR environment variables should be set properly for your programming environment.
Similarly, for "complex" PetscScalar type support (which will in turn have implications for the interface supported in SLEPc), you will instead want to load the "cray-petsc-complex" and "slepc-complex" modules.
Hopper programming environment support (December 2014): At present, our SLEPc builds are only available for the GNU and Intel programming environments on Hopper. This relates to known issues with the current default version of cray-petsc (3.4.2) and its dependencies.
All four major programming environments (PGI, GNU, Cray, and Intel) are supported in the newer 3.4.4 version of the cray-petsc and slepc modules, as well as their complex equivalents. However, a number of additional modules will need to be loaded in order to make use of them (as they require a more recent version of Cray MPICH, as well as other system libraries). Attempting to load the "slepc/3.4.4" or "slepc-complex/3.4.4" modules will result in error messages enumerating these dependencies (specifically, cray-mpich-compat/v7, xt-asyncpe, cray-tpsl, and potentially additional changes in compiler version).
For example, in order to load the slepc/3.4.4 module in combination with the PGI compilers, one would have to use the following set of modules:
> module load cray-mpich-compat/v7
> module swap xt-asyncpe xt-asyncpe/5.27
> module swap pgi pgi/14.1.0
> module load cray-tpsl/1.4.1
> module load cray-petsc/188.8.131.52
> module load slepc/3.4.4
Analogous commands would be used to load the complex PetscScalar type libaries (replacing cray-petsc with cray-petsc-complex and slepc with slepc-complex).
Using SLEPc on Edison
On Edison, all three major programming environments are supported (Intel, GNU, Cray) and no modifications to the default modules should be required. As on Hopper, you can simply run:
module load cray-petsc
module load slepc
to load compatible PETSc and SLEPc versions based on "real" PetscScalar types, whereas "complex" PetscScalar type support is enabled by instead loading the "cray-petsc-complex" and "slepc-complex" modules.
Previously, the SLEPc installations on Hopper were maintained by the DOE Advanced CompuTational Software Collection (ACTS), along with PETSc and a number of other software libraries. However, since then, successive updates to the default programming environment on Hopper have left these modules increasingly out of date. Thus, NERSC is now providing its own newer builds of SLEPc that integrate with the equivalent suite of libraries as were previously available through ACTS, but are now available via Cray's PETSc and TPSL library modules.
A note to Carver users: The ACTS SLEPc installation remains available on Carver in the SL5 Chos environment, and for the PGI compiler only.
General information SLEPc is available at www.grycap.upv.es/slepc/ .
For questions about using SLEPc on any NERSC system, please send e-mail to email@example.com .
|Package||Platform||Category||Version||Module||Install Date||Date Made Default|
|SLEPc (PETSc real)||edison||libraries/ math||3.4.4||slepc/3.4.4||2014-12-08||2014-12-08|
|SLEPc (PETSc real)||edison||libraries/ math||3.5.3||slepc/3.5.3||2014-12-19||2014-12-19|
|SLEPc (PETSc real)||hopper||libraries/ math||3.4.2||slepc/3.4.2||2014-12-03||2014-12-03|
|SLEPc (PETSc real)||hopper||libraries/ math||3.4.4||slepc/3.4.4||2014-12-03|