# rocm Stack GPU AMD sur gpu-01 (AlmaLinux, RX 6700XT) : repos AMD, runtime ROCm, paquets de build pour llama.cpp. ## Ce que fait le rôle - Clé GPG AMD + repos `amdgpu` et `rocm` (latest) - kernel headers/devel (requis pour amdgpu-dkms) - Runtime : rocminfo, rocm-hip-runtime, rocm-opencl-runtime, rocblas, hipblaslt - Paquets build (pour le rôle `llama_server`) : hipblas-devel, rocblas-devel, hip-devel, hipcc, cmake, gcc-c++, patchelf - `HSA_OVERRIDE_GFX_VERSION=10.3.0` **system-wide** (`/etc/environment`) et dans `profile.d` - Ajoute le user ansible aux groupes `video` et `render` ## Variables principales | Variable | Défaut | |---|---| | `rocm_rhel_version` | `9.7` | | `hsa_override_gfx_version` | `10.3.0` | ## ⚠️ Contrainte critique La RX 6700XT (**gfx1031**) n'est pas supportée officiellement par ROCm. Sans `HSA_OVERRIDE_GFX_VERSION=10.3.0` (la faire passer pour une gfx1030), **tout calcul GPU échoue**. La variable doit être présente dans l'environnement de chaque service GPU (le template systemd de llama_server la définit aussi). ## ⚠️ Piège `rocm_rhel_version` — radeon.com ne publie pas toutes les mineures `repo.radeon.com/amdgpu/latest/rhel//` n'existe **pas** pour chaque mineure RHEL. Au 2026-06-22 : `9.4` ✅, `9.5` ❌, `9.6` ✅, `9.7` ✅, `9.8` ❌ — alors que gpu-01 tourne sous **AlmaLinux 9.8**. Il faut donc pinner `rocm_rhel_version` sur la dernière mineure **publiée** (`9.7`), pas sur le `VERSION_ID` de l'hôte. **Symptôme si décalé** (vécu le 2026-06-22 après un `dnf upgrade` qui a bumpé l'hôte en 9.8) : `make apply-gpu` échoue **dès le rôle `common`** : > `Failed to download metadata for repo 'amdgpu': Cannot download repomd.xml … All mirrors were tried` La cause est le **repo `amdgpu.repo` package-shipped** (écrit par `amdgpu-install`, visible via `amdgpu.repo.rpmsave`), dont la `baseurl` utilise `$amdgpudistro` (vide → repli sur `$releasever` = 9.8 → 404). Le repo géré par CE rôle (`latest/rhel/{{ rocm_rhel_version }}`) est correct, mais `common` tourne **avant** `rocm` dans le playbook → il bute sur le repo cassé en premier. **Workaround live** (soigne dnf immédiatement, sans rejouer le rôle) : ```bash echo 9.7 > /etc/dnf/vars/amdgpudistro && dnf repolist # doit lister amdgpu sans erreur ``` ## Caveat Les repos pointent vers `latest` — un `make apply-gpu` peut tirer une nouvelle version majeure de ROCm. Après upgrade kernel ou ROCm, vérifier `rocm-smi` et un completion de test avant de considérer le nœud sain (voir `admin/ia/rocm.md`).