EASYBUILD_CUDA_COMPUTE_CAPABILITIES=7.0,8.0 eb Kokkos-4.7.01-GCC-14.3.0-CUDA-12.9.1.eb --cuda-sanity-check-error-on-failed-checks
fails as we build Kokkos for only one CUDA CC (the latest in the supplied list - https://github.com/easybuilders/easybuild-easyblocks/blob/develop/easybuild/easyblocks/k/kokkos.py#L226) and not all specified. We will see a similar failure for LAMMPS, as that is Kokkos based and the logic is the same.
If we make the CUDA CC check default then we will have to make sure this is fixed before then. Also, I have not checked to see if there are other EasyBlocks that will fail for similar reasons.
EB build output:
>> CUDA sanity check summary report:
>> Number of CUDA files checked: 6
>> Number of files missing one or more CUDA Compute Capabilities: 6 (ignored: 0, fails: 6)
>> Number of files with device code for more CUDA Compute Capabilities than requested: 0
>> Number of files missing PTX code for the highest configured CUDA Compute Capability: 0
>> You may consider rerunning with --cuda-sanity-check-accept-ptx-as-devcode to accept suitable PTX code instead of device code.
>> See build log for detailed lists of files not passing the CUDA Sanity Check
List of failed files from the log file:
== 2026-01-05 15:24:30,974 easyblock.py:3783 INFO CUDA sanity check detailed report:
6 files missing one or more CUDA compute capabilities:
lib/libkokkosalgorithms.a
lib/libkokkoscontainers.a
lib/libkokkoscore.a
lib64/libkokkosalgorithms.a
lib64/libkokkoscontainers.a
lib64/libkokkoscore.a
Individual failure for one file - showing the missing CUDA CC as expected:
== 2026-01-05 15:24:30,962 easyblock.py:3630 WARNING Mismatch between cuda_compute_capabilities and device code in /rds/projects/2017/branfosj-rse/easybuild/EL8-ice/software/Kokkos/4.7.01-GCC-14.3.0-CUDA-12.9.1/lib64/libkokkoscore.a. Missing compute capabilities: 7.0.
fails as we build Kokkos for only one CUDA CC (the latest in the supplied list - https://github.com/easybuilders/easybuild-easyblocks/blob/develop/easybuild/easyblocks/k/kokkos.py#L226) and not all specified. We will see a similar failure for LAMMPS, as that is Kokkos based and the logic is the same.
If we make the CUDA CC check default then we will have to make sure this is fixed before then. Also, I have not checked to see if there are other EasyBlocks that will fail for similar reasons.
EB build output:
List of failed files from the log file:
Individual failure for one file - showing the missing CUDA CC as expected: