E3SM-Project / spack

A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
https://spack.io
Other
1 stars 2 forks source link

Add cuda-related variants for Albany and Trilinos #31

Closed mcarlson801 closed 1 month ago

mcarlson801 commented 3 months ago

This PR adds variants to albany and trilinos-for-albany spack recipes to support CUDA builds.

A few notes about the included variants: 1) DFad Sacado types do not work on GPU so I've added an SLFad variant to Albany as an alternative that will work for all GPU cases. 2) CUDA Unified Virtual Memory (UVM) is off by default but can be enabled by adding +uvm 3) Same for Tpetra's GPU_AWARE_MPI (add +aware to enable) 4) Added +zen3 and +ampere80 architecture flags for Perlmutter-GPU

mcarlson801 commented 2 months ago

@jewatkins @xylar

xylar commented 2 months ago

@mcarlson801, great, I'll test this tomorrow.

xylar commented 2 months ago

@mcarlson801 and @jewatkins, please see my comments here: https://github.com/MPAS-Dev/compass/pull/835#issuecomment-2286148647

mcarlson801 commented 2 months ago

@xylar I think these are all the changes we need for a GPU build. Is there anything else we need to do before it can be merged?