mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-10 23:44:42 +02:00
Le `dnf upgrade` du rôle common avait bumpé gpu-01 en AlmaLinux 9.8, mais repo.radeon.com ne publie pas latest/rhel/9.8 (ni 9.5) — seulement 9.4/9.6/9.7. `make apply-gpu` échouait alors dès `common` sur « Cannot download repomd.xml » pour le repo amdgpu. - rocm_rhel_version 9.4 → 9.7 (dernière mineure publiée par radeon) + piège documenté dans le README rocm (avec workaround live /etc/dnf/vars/amdgpudistro). - Pin llama_server_commit au commit construit sur g01 : sans pin le rôle clonait HEAD → rebuild (~15 min) + restart GPU non déterministe à chaque apply. - Réconciliation du drop-in llama-embed (ubatch 2048) dans l'unit rendu par le rôle (apply ciblé) ; drop-in temporaire supprimé. RAG validé (rag-query OK). - Doc : etat-cluster + journal 2026-06-22 mis à jour. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
48 lines
2.5 KiB
Markdown
48 lines
2.5 KiB
Markdown
# 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/<v>/` 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`).
|