Retour à l'accueil

Exécution de MoE GPT-OSS-120B sur GPU 6 GB jusqu'à 30 t/s

L'article décrit l'exécution du modèle MoE 120B GPT-OSS-120B sur GPU avec 6 GB VRAM jusqu'à 30 t/s. Explique l'architecture MoE, les paramètres -cmoe, --fit pour une distribution efficace des tenseurs entre CPU et GPU.

30 t/s sur 6 GB : optimisation MoE GPT-OSS-120B
Advertisement 728x90

## Optimisation des modèles MoE sur des GPU modestes : Exécution de GPT-OSS-120B avec 6 GB de VRAM à jusqu'à 30 t/s

Le modèle GPT-OSS-120B comptant 120 milliards de paramètres fonctionne sur un GPU doté de 6 GB de VRAM à une vitesse de 30 jetons/s. Le facteur clé est l'utilisation de la RAM plutôt que de la VRAM, grâce à l'architecture Mixture of Experts (MoE) et au paramètre -cmoe. Cela permet une distribution efficace des tenseurs entre le CPU et le GPU sans avoir besoin de mises à niveau matérielles.

Architecture Mixture of Experts

Les modèles MoE activent un nombre limité d'experts issus d'un pool partagé à chaque couche. Le routeur (réseau de sélection) choisit 2 à 4 experts parmi 128 pour la génération de jetons, réduisant la charge de calcul par 24 par rapport aux modèles denses.

Chaque couche contient :

Google AdInline article slot
  • Des blocs d'attention (tenseurs partagés)
  • Des blocs FFN, remplacés par un groupe d'experts
  • Un routeur pour le routage

Les experts sont des mini-FFN isolés spécialisés dans des plages de données d'entrée. Lors de la génération de jetons, le processus traverse toutes les couches (12 à 100+), alternant couches MoE et couches denses.

Dans les modèles denses, le FFN est un bloc monolithique ; dans les modèles MoE, il s'agit d'une structure éparse. Le volume total de paramètres est important, mais l'activité par passage est faible. Problèmes : chevauchement d'experts, routage sous-optimal du routeur.

Pourquoi la VRAM est inefficace pour MoE

Décharger des couches MoE entières sur le GPU entraîne du temps d'inactivité : sur 128 experts, seuls 4 sont actifs, le reste gaspille de la VRAM. Les tenseurs d'attention (partagés) ont un faible volume ; leur déchargement assure une utilisation constante du GPU.

Google AdInline article slot

Comparaison de configurations :

| Configuration | VRAM utilisée | Calculés | Efficacité |

|------------------|---------------|----------|------------|

Google AdInline article slot

| Couches entières | 16 blocs | 8 blocs | 50% |

| Tenseurs Attn | 16 blocs | 16 blocs | 100% |

Pour GPT-OSS-120B avec -cmoe, utilisation de la VRAM ~3 GB, vitesse 30 t/s. Les modèles denses n'ont pas de lacunes, la VRAM est proportionnelle aux calculs.

Paramètres d'optimisation dans llama.cpp

Paramètre principal -cmoe / --cpu-moe

Laisse les experts MoE (tenseurs exps) sur le CPU, et décharge :

  • Les tenseurs d'attention de toutes les couches
  • Les couches partagées (sans exps dans le nom)
  • Les experts partagés (shexp)

Logique de lancement :

  • -ngl 999 — tout sur GPU
  • -cmoe — MoE de retour sur CPU

Important : Ne pas utiliser ik_llama pour GPT-OSS-120B.

-ncmoe N / --n-cpu-moe N

Contrôle le nombre de couches sur CPU lorsque la VRAM est abondante. GPT-OSS-120B : 37 couches.

  • -cmoe — 3 GB de VRAM
  • -ncmoe 30 — remplit jusqu'à la limite

-ncmoe est ignoré avec -cmoe (ce dernier a la priorité).

Nouveau paramètre --fit (décembre 2025)

Remplissage automatique de la VRAM :

  • --fit — par défaut, pour MoE inclut ncmoe
  • --fit-ctx 4096 — limite de contexte (défaut 4096 au lieu de 128k)
  • --fit-target 1024 — VRAM libre en MB (défaut 1 GB)

Définit automatiquement -fa, -ngl, -t au maximum. Problème : -t = cœurs CPU - 1, pour les CPU hybrides (cœurs E/P) spécifiez explicitement -t 8.

Optimisations mémoire supplémentaires

  • -fa 1 — flash attention / swa / mla, détection automatique
  • -ub 4096 -b 4096 — quantification du KV-cache
  • -ctk q8_0 -ctv q8_0 — quantification du contexte

Nouveau --models-dir — basculer les modèles depuis l'interface utilisateur, --models-max 1 contre OOM.

Points clés

  • Les modèles MoE (GPT-OSS-120B, DeepSeek V3) nécessitent RAM > VRAM
  • -cmoe ne décharge que les tenseurs d'attention sur GPU
  • --fit automatise l'ajustement des paramètres
  • Vitesse de 30 t/s sur 6 GB de VRAM réalisable
  • Éviter ik_llama et l'auto---t sur CPU hybrides

— Editorial Team

Advertisement 728x90

Lire ensuite