HPC hypre
Treat hypre as a solver-library family with distinct matrix interfaces and multigrid-heavy preconditioning workflows.
Start
- Read
references/interface-selection.mdbefore creating or repairing a hypre solve path. - Read
references/matrix-and-ownership-playbook.mdwhen choosing row ownership, indexing, or assembly discipline. - Read
references/boomeramg-and-krylov-playbook.mdwhen choosingBoomerAMG, Krylov solvers, or a first stable parameter set. - Read
references/boomeramg-parameter-matrix.mdwhen changing coarsening, interpolation, smoothing, or cycle choices. - Read
references/krylov-and-preconditioner-matrix.mdwhen the operator class does not fit the defaultPCGplusBoomerAMGbaseline. - Read
references/structured-and-sstruct-playbook.mdwhen the problem is logically structured or semi-structured. - Read
references/build-and-integration.mdwhen building hypre directly or consuming it through PETSc or another host code. - Read
references/error-recovery.mdwhen setup, solve, or parallel behavior fails.
Work sequence
- Classify the discretization storage first:
- general sparse assembled system ->
IJ - structured grid with regular stencil semantics ->
Struct - mostly structured with coupled variable blocks or irregular pieces ->
SStruct
- general sparse assembled system ->
- Choose a baseline solver pair that matches the operator:
- SPD-like problems ->
PCGwithBoomerAMG - general nonsymmetric problems ->
GMRESorFlexGMRESwithBoomerAMGas the preconditioner
- SPD-like problems ->
- Get the baseline solve working before changing coarsening, interpolation, or relaxation details.
- Keep distributed row ownership and matrix assembly consistent across ranks.
Guardrails
- Do not use the structured interfaces when the data model is really an unstructured sparse matrix.
- Do not start by over-tuning
BoomerAMG; defaults are the first checkpoint. - Do not debug multigrid parameters before confirming the operator, nullspace, and boundary conditions are coherent.
- Do not assume host applications expose every hypre knob unless the integration layer documents it.
Additional References
Load these on demand:
references/matrix-and-ownership-playbook.mdforIJassembly and distributed indexing rulesreferences/boomeramg-parameter-matrix.mdfor practical AMG knob selectionreferences/krylov-and-preconditioner-matrix.mdfor solver-family selection beyond the default baselinereferences/structured-and-sstruct-playbook.mdfor structured-grid cases and hybrid layoutsreferences/build-and-integration.mdfor PETSc-backed or direct-link buildsreferences/error-recovery.mdfor setup, memory, and divergence signaturesreferences/error-pattern-dictionary.mdfor quick matching of common hypre failure classes
Reusable Templates
Use assets/templates/ when a concrete starting point is faster than rebuilding the solve path from scratch, especially:
hypre_ij_pcg_boomeramg.chypre_build_example.shhypre_ij_slurm.sh
Outputs
Summarize:
- chosen hypre interface
- baseline solver and preconditioner path
- multigrid knobs changed from default
- integration path such as direct hypre or PETSc-mediated usage
- the exact failure stage if the workflow is being repaired
Scan to join WeChat group