Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tpetra/Ifpack2: Better handling of non-GPU aware MPI #13511

Open
csiefer2 opened this issue Oct 8, 2024 · 7 comments
Open

Tpetra/Ifpack2: Better handling of non-GPU aware MPI #13511

csiefer2 opened this issue Oct 8, 2024 · 7 comments
Labels
pkg: Tpetra type: enhancement Issue is an enhancement, not a bug

Comments

@csiefer2
Copy link
Member

csiefer2 commented Oct 8, 2024

Largely from discussions with @vbrunini and @jjellio , we should have a unified way of supporting the equivalent TPETRA_ASSUME_GPU_AWARE_MPI across the solver stack (Ifpack2's TriDi solver ignores this). Moreover, if you are building a GPU node but not using GPU-Aware MPI, it should use Kokkos::SharedHostPinnedSpace for the comm buffer. This abstraction let's us move arch-specific behavior out of Tpetra proper.

This should also probably be done with env controls at a Trilinos-wide level and not at the Tpetra-level.

@csiefer2 csiefer2 added the type: enhancement Issue is an enhancement, not a bug label Oct 8, 2024
@csiefer2 csiefer2 added this to Tpetra Oct 8, 2024
Copy link

github-actions bot commented Oct 8, 2024

Automatic mention of the @trilinos/ifpack2 team

@jhux2
Copy link
Member

jhux2 commented Oct 14, 2024

Related: #4757

@jhux2
Copy link
Member

jhux2 commented Oct 14, 2024

Packages that explicitly reference CudaHostPinnedSpace:

  • Adelus
    • option to use
  • Ifpack2
    • hard-wired in TriDiag solver
  • Panzer (one unit test)
  • STK
    • hard-wired
  • Tpetra
    • not used
  • Kokkos
  • Kokkos-Kernels

@csiefer2
Copy link
Member Author

@vqd8a How does Adelus control whether or not to use HostPinnedSpace?

@jhux2
Copy link
Member

jhux2 commented Oct 15, 2024

@vqd8a How does Adelus control whether or not to use HostPinnedSpace?

Adelus has a cmake option.

@jhux2
Copy link
Member

jhux2 commented Oct 25, 2024

Developer consensus at TUG was that Trilinos should have a project-level default behavior, but that individual packages can choose not to use it.

@jhux2
Copy link
Member

jhux2 commented Oct 31, 2024

User requests/questions:

  • allow for environment override, at least in Tpetra
  • could this be a template parameter to allow for app benchmarking?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pkg: Tpetra type: enhancement Issue is an enhancement, not a bug
Projects
Status: Needs Triage
Development

No branches or pull requests

2 participants