Skip to content

Conversation

lexming
Copy link
Contributor

@lexming lexming commented Jun 18, 2025

Fixes #4853

Enhance NVHPC to be a full toolchain:

  • compilers provided by new nvidia-compilers subtoolchain
    • equivalent to current NVHPC
    • nvidia-compilers will have their own easyconfigs
  • mpi provided by new NVHPCX subtoolchain
    • NVHPCX is bundled in NVHPC so it will not exist with their own easyconfigs
  • linalg provided by new NVBLAS subtoolchain
    • NVBLAS is bundled in NVHPC so it will not exist with their own easyconfigs

I also added some extra features related to NVHPC:

  • cuda_compute_capabilities can be defined from environment variable $EBNVHPCCUDACC: this environment variable can be set by nvidia-compilers or NVHPC if they are installed with a given cuda_compute_capabilities, avoiding the need to manually set cuda_compute_capabilities for every installation in that toolchain.
  • CUDA templates (e.g. %(cudaver)s) will be defined from environment variable $EBNVHPCCUDAVER: this environment variable will be set by nvidia-compilers or NVHPC, allowing to use those templates in all easyconfigs in the toolchain without having to depend on CUDA.
  • new template %(cuda_cc_nvhpc)s for CUDA compute capabilities with the format expected by NVHPC

@lexming
Copy link
Contributor Author

lexming commented Jul 25, 2025

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Provide a full toolchain purely based on NVHPC
2 participants