Introduction
Cet article présente mes premières impressions sur l'utilisation de ROCm et Strix Halo, ainsi que la configuration nécessaire pour les utiliser avec PyTorch et Llama.cpp.
Contexte Technique
Pour commencer, j'ai installé Ubuntu 24.04 LTS, car c'est la version prise en charge par ROCm. J'ai suivi les instructions officielles pour l'installation, mais j'ai rencontré quelques problèmes. Tout d'abord, il a fallu mettre à jour le BIOS pour que PyTorch puisse détecter la carte graphique. Ensuite, j'ai dû configurer les paramètres du BIOS pour partager la mémoire entre le CPU et la GPU.
La configuration de la mémoire partagée est importante, car le CPU ne peut pas utiliser la mémoire réservée à la GPU. La GPU peut utiliser la mémoire réservée et la mémoire partagée, mais utiliser les deux en même temps peut être moins efficace que d'avoir une grande mémoire partagée en raison de la fragmentation et des coûts d'adressage.
Analyse et Implications
Les implications de cette configuration sont importantes. Tout d'abord, le CPU ne peut pas utiliser la mémoire réservée à la GPU. Ensuite, la GPU peut utiliser la mémoire réservée et la mémoire partagée, mais comme mentionné précédemment, cela peut être moins efficace. Enfin, certains jeux ou logiciels anciens peuvent ne pas fonctionner correctement si la mémoire de la GPU est configurée pour être trop petite.
Pour configurer la mémoire partagée, j'ai ajouté les paramètres suivants à /etc/default/grub : GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ttm.pages_limit=32768000 amdgpu.gttsize=114688". Il est important de noter que la taille de la mémoire partagée ne doit pas inclure toute la mémoire système, car cela peut rendre le noyau Linux instable.
Perspective
En conclusion, mes premières impressions sur ROCm et Strix Halo sont positives. J'ai pu configurer PyTorch et Llama.cpp pour fonctionner avec ces technologies, même si j'ai rencontré quelques difficultés. La configuration de la mémoire partagée est importante pour obtenir de bonnes performances. Il est également important de noter que la taille de la mémoire partagée doit être configurée soigneusement pour éviter les problèmes de stabilité du noyau Linux.