|
30 | 30 | - nvidia/cc90 |
31 | 31 | - nvidia/cc100 |
32 | 32 | - nvidia/cc120 |
| 33 | + - amd/gfx908 |
| 34 | + - amd/gfx90a |
| 35 | + - amd/gfx942 |
| 36 | + - amd/gfx1030 |
| 37 | + - amd/gfx1100 |
| 38 | + - amd/gfx1101 |
| 39 | + - amd/gfx1200 |
| 40 | + - amd/gfx1201 |
33 | 41 | # and then allow for special cases for specific architectures |
| 42 | + aarch64/generic: |
| 43 | + - nvidia/cc70 |
| 44 | + - nvidia/cc80 |
| 45 | + - nvidia/cc90 |
| 46 | + - nvidia/cc100 |
| 47 | + - nvidia/cc120 |
| 48 | + aarch64/neoverse_n1: |
| 49 | + - nvidia/cc70 |
| 50 | + - nvidia/cc80 |
| 51 | + - nvidia/cc90 |
| 52 | + - nvidia/cc100 |
| 53 | + - nvidia/cc120 |
| 54 | + aarch64/neoverse_v1: |
| 55 | + - nvidia/cc70 |
| 56 | + - nvidia/cc80 |
| 57 | + - nvidia/cc90 |
| 58 | + - nvidia/cc100 |
| 59 | + - nvidia/cc120 |
| 60 | + aarch64/nvidia/grace: |
| 61 | + - nvidia/cc70 |
| 62 | + - nvidia/cc80 |
| 63 | + - nvidia/cc90 |
| 64 | + - nvidia/cc100 |
| 65 | + - nvidia/cc120 |
34 | 66 | aarch64/a64fx: [] |
35 | 67 | jobs: |
36 | 68 | # Checks whether this PR modifies any easystack files and, if so, |
@@ -232,15 +264,25 @@ jobs: |
232 | 264 | module use ${EESSI_SOFTWARE_PATH}/accel/${accel}/modules/all |
233 | 265 | echo "checking missing installations for accelerator ${accel} using modulepath: ${MODULEPATH}" |
234 | 266 | for easystack_file in $(EESSI_VERSION=${{matrix.EESSI_VERSION}} ACCEL_EASYSTACKS=1 .github/workflows/scripts/only_latest_easystacks.sh); do |
235 | | - eb_version=$(echo ${easystack_file} | sed 's/.*eb-\([0-9.]*\).*.yml/\1/g') |
236 | | - echo "check missing installations for ${easystack_file} with EasyBuild ${eb_version}..." |
237 | | - module purge |
238 | | - module load EasyBuild/${eb_version} |
239 | | - which eb |
240 | | - eb --version |
241 | | - software-layer-scripts/check_missing_installations.sh ${easystack_file} |
242 | | - ec=$? |
243 | | - if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi |
| 267 | + # Check that the vendor of the accelerator ($accel) matches the vendor name in the easystack filepath |
| 268 | + # Only then, do the missing install check |
| 269 | + # This avoids e.g. that we're checking for missing AMD GPU installations in an NVIDIA GPU prefix |
| 270 | + vendor=echo "${arch#*/}" |
| 271 | + if "${easystack_file}" == "*accel/${vendor}*"; then |
| 272 | + eb_version=$(echo ${easystack_file} | sed 's/.*eb-\([0-9.]*\).*.yml/\1/g') |
| 273 | + echo "check missing installations for ${easystack_file} with EasyBuild ${eb_version}..." |
| 274 | + module purge |
| 275 | + module load EasyBuild/${eb_version} |
| 276 | + which eb |
| 277 | + eb --version |
| 278 | + software-layer-scripts/check_missing_installations.sh ${easystack_file} |
| 279 | + ec=$? |
| 280 | + if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi |
| 281 | + else: |
| 282 | + msg=Not checking easystack file '${easystack_file}', for accelerator target ${accel}:" |
| 283 | + msg="${msg} this easystack file targets a different vendor" |
| 284 | + echo "${msg}" |
| 285 | + fi |
244 | 286 | done |
245 | 287 | module unuse ${EESSI_SOFTWARE_PATH}/accel/${accel}/modules/all |
246 | 288 | done |
|
0 commit comments