Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,11 @@ uenvs:
santis: [gh200]
bristen: [a100]
eiger: [zen2]
"26.3":
recipes:
mi200: 26.3/amdgpu
deploy:
beverin: [mi200]
prgenv-gnu-openmpi:
"25.12":
recipes:
Expand Down
4 changes: 4 additions & 0 deletions recipes/prgenv-gnu/26.3/amdgpu/compilers.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
gcc:
version: "13"
llvm-amdgpu:
version: "6.3.3"
10 changes: 10 additions & 0 deletions recipes/prgenv-gnu/26.3/amdgpu/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: prgenv-gnu
version: 2
spack:
commit: releases/v1.0
repo: https://github.com/spack/spack.git
packages:
repo: https://github.com/spack/spack-packages.git # develop on 2025-12-16
commit: 1a32c3379c9fa28549c68b7931712d81831304df
store: /user-environment
description: GNU Compiler toolchain with cray-mpich, Python, CMake and other development tools for gfx90a, gfx42 (MI300A, MI250X)
80 changes: 80 additions & 0 deletions recipes/prgenv-gnu/26.3/amdgpu/environments.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
gcc-env:
compiler: [gcc, llvm-amdgpu]
network:
mpi: cray-mpich@8.1.32+rocm
specs: [ 'libfabric@2.3 +rocm' ]
unify: when_possible
duplicates:
strategy: full
specs:
# Pinned because of https://github.com/ROCm/rocm-systems/issues/2356
- boost@1.88.0 +chrono +filesystem +iostreams +mpi +python +regex +serialization +shared +system +timer
- cmake
- fftw
- fmt
- gsl
- hdf5+cxx+hl+fortran
- netlib-scalapack
- lua
- libtree
- lz4
- meson
- netcdf-c
- netcdf-cxx
- netcdf-cxx4
- netcdf-fortran
- ninja
- openblas threads=openmp
- osu-micro-benchmarks ~xccl
- python@3
- zlib-ng
# add GPU-specific packages here, for easier comparison with mc version
- hip@6.3.3 ^mesa@23.3.6
- hdf5+mpi
- hipcub
- llvm-amdgpu
- intel-oneapi-compilers+amd
# rocm packages
- rocblas ^py-msgpack %cxx=gcc
- rocfft
- rocm-cmake %cxx=gcc
- rocm-openmp-extras
- rocm-core %cxx=gcc
- rocminfo
- rocprim
- rocprofiler-dev
- rocprofiler-register ^glog %cxx=gcc ^gflags %cxx=gcc
- rocprofiler-systems@6.3.3 +internal-dyninst
- rocrand
- rocsolver
- rocsparse
- rocthrust
- roctracer-dev-api %cxx=gcc
- roctracer-dev
- rocm-gdb
- rocm-debug-agent
# hip packages
- hipblas
- hipblaslt
- hiprand
- hipsparse
- hipfft
- hipblas-common
# networking
- rccl
# commits pinned for reproducibility, not bugs; update when updating recipe
- aws-ofi-rccl@git.6dae1b0d588c27689ba6daa32710359ea96de78c=cxi
- rccl-tests@git.6405c76e6826663bbb67bd40aeee8c70aa5d3094=develop %cxx=llvm-amdgpu ^cray-mpich@8.1.32 +rocm %c,cxx,fortran=gcc
variants:
- +mpi
- +rocm
- amdgpu_target=gfx942,gfx90a
- amdgpu_target_sram_ecc=gfx942,gfx90a
views:
default:
link: roots
exclude: ["llvm"]
uenv:
add_compilers: true
prefix_paths:
LD_LIBRARY_PATH: [lib, lib64]
16 changes: 16 additions & 0 deletions recipes/prgenv-gnu/26.3/amdgpu/extra/reframe.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
default:
features:
- rocm
- mpi
- rccl
- rccl-tests
- openmp
- prgenv
- serial
- cray-mpich
- osu-micro-benchmarks
cc: mpicc
cxx: mpic++
ftn: mpifort
views:
- default
23 changes: 23 additions & 0 deletions recipes/prgenv-gnu/26.3/amdgpu/modules.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
modules:
# Paths to check when creating modules for all module sets
prefix_inspections:
bin:
- PATH
lib:
- LD_LIBRARY_PATH
lib64:
- LD_LIBRARY_PATH

default:
arch_folder: false
# Where to install modules
roots:
tcl: /user-environment/modules
tcl:
all:
autoload: none
hash_length: 0
exclude_implicits: true
exclude: ['%gcc@7.5.0', 'gcc %gcc@7.5.0']
projections:
all: '{name}/{version}'
8 changes: 8 additions & 0 deletions recipes/prgenv-gnu/26.3/amdgpu/post-install
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/bash

set -e

# remove offending environment variables
jq '.views["default"].env.values.scalar["HIPCC_LINK_FLAGS_APPEND"]|="" | .views["default"].env.values.scalar["HIPCC_COMPILE_FLAGS_APPEND"]|="" ' /user-environment/meta/env.json > /tmp/env.json
# copy file back to destination
cp /tmp/env.json /user-environment/meta/env.json