HPC Trilinos
Treat Trilinos as a package ecosystem. Choose the smallest coherent package set that matches the application's scalar types, maps, and solver needs.
Start
- Read
references/package-selection.mdbefore creating or repairing a Trilinos-based solve path. - Read
references/tpetra-map-and-operator-playbook.mdwhen distributed maps, import or export, or operator consistency is in doubt. - Read
references/linear-solver-and-preconditioner-playbook.mdwhen choosingBelos,Ifpack2,MueLu, orAmesos2. - Read
references/package-enable-matrix.mdwhen choosing the minimum coherent CMake package set for a build. - Read
references/belos-ifpack2-muelu-matrix.mdwhen mapping operator class to iterative, direct, local-preconditioner, or AMG paths. - Read
references/stratimikos-and-parameterlists.mdwhen a host code wraps Trilinos through strategy objects or nestedTeuchos::ParameterListtrees. - Read
references/build-and-explicit-instantiation.mdwhen configuring Trilinos with CMake, choosing package enables, or diagnosing template-instantiation failures. - Read
references/error-recovery.mdwhen build, link, map-consistency, or runtime solver behavior fails.
Work sequence
- Decide the linear algebra family first:
- modern distributed stack ->
Tpetra - legacy code constrained to older interfaces ->
Epetra
- modern distributed stack ->
- Keep maps, scalar types, local ordinals, and global ordinals consistent before tuning solver packages.
- Choose a baseline solve path:
- iterative ->
Belos - local relaxation or overlap preconditioning ->
Ifpack2 - multigrid ->
MueLu - direct solve backend ->
Amesos2
- iterative ->
- Start from the minimal package enable set that can express the workflow.
Guardrails
- Do not mix
TpetraandEpetracasually in one path without an explicit compatibility reason. - Do not blame
BelosorMueLufor failures caused by inconsistent maps or scalar-type mismatches. - Do not enable large swaths of Trilinos packages when only a few are needed.
- Do not ignore explicit-instantiation and template-parameter consistency when diagnosing link errors.
Additional References
Load these on demand:
references/tpetra-map-and-operator-playbook.mdfor map layout, import or export, and operator correctnessreferences/package-enable-matrix.mdfor trimmed package-enable planningreferences/belos-ifpack2-muelu-matrix.mdfor solver and preconditioner family selectionreferences/stratimikos-and-parameterlists.mdfor parameter-tree routing and wrapped solver stacksreferences/build-and-explicit-instantiation.mdfor CMake enables, package trimming, and template consistencyreferences/error-recovery.mdfor map, package, and solver integration failuresreferences/error-pattern-dictionary.mdfor quick matching of common Trilinos failure classes
Reusable Templates
Use assets/templates/ when a concrete starting point is faster than rebuilding the solve path from scratch, especially:
tpetra_belos_ifpack2_minimal.cpptpetra_belos_ifpack2_CMakeLists.txtstratimikos_solver_params.xmltrilinos_cmake_configure.shtrilinos_belos_slurm.sh
Outputs
Summarize:
- chosen linear algebra stack
- package set in use
- solver and preconditioner baseline
- build and template-instantiation decisions that matter
- the exact failure stage if the workflow is being repaired
Scan to join WeChat group