Apple Silicon et mémoire unifiée
Apple Silicon joue un autre jeu. Le CPU et le GPU partagent un seul pool de mémoire unifiée, et le GPU peut adresser presque tout — donc sur un Mac, acheter de la RAM, c'est acheter de la VRAM. Un Mac 64 GB tient tous les quants 32B et la plupart des 70B qu'aucune carte dédiée grand public ne peut. Le hic, c'est la bande passante : vous avez des tuyaux mémoire de classe laptop, pas de la GDDR au téraoctet par seconde.
La mémoire unifiée, concrètement
Sur PC, RAM système et VRAM sont des pools séparés ; déborder signifie des allers-retours PCIe à une fraction de la vitesse VRAM. Sur Apple Silicon il y a un pool physique unique, donc le GPU lit les poids directement dans la RAM « système » sans copie ni taxe PCIe. Les versions récentes de macOS plafonnent la RAM utilisable par le GPU à environ deux tiers voire trois quarts du physique par défaut ; vous pouvez relever le plafond :
sysctl iogpu.wired_limit_mb # limite mémoire GPU actuelle
sudo sysctl iogpu.wired_limit_mb=49152 # p. ex. 48 GB sur un Mac 64 GB
Laissez quand même plusieurs GB à l'OS — tout épingler sur le GPU rend toute la machine misérable.
Bande passante par classe de puce
La vitesse de décodage est bande passante ÷ octets par jeton, même arithmétique qu'ailleurs. Un modèle 8B Q4 fait ~5 GB, donc le plafond est bande passante ÷ 5 :
| Classe de puce | Bande passante approx. | Plafond de décodage 8B Q4 |
|---|---|---|
| Base M | ~100–120 GB/s | ~20–24 tok/s |
| Pro | ~150–270 GB/s | ~30–55 tok/s |
| Max | ~400–550 GB/s | ~80–110 tok/s |
| Ultra | ~800 GB/s | ~160 tok/s |
Exemple détaillé : une puce Max à ~550 GB/s a un plafond de ~110 tok/s en 8B Q4 et délivre 70–95 en pratique. Les puces Base conviennent aux petits modèles et sont douloureuses à 30B+ ; Max et Ultra sont les classes qui font penser à un GPU dédié. Les fourchettes sont approximatives — vérifiez les specs de la puce exacte avant d'acheter.
Second exemple, celui pour lequel les Mac existent : un modèle 32B Q4_K_M, c'est ~19.2 GB de poids plus ~2.1 GB de KV à 8k, plus l'OS. Une machine 36 GB l'exécute avec une marge mince ; 48–64 GB l'exécute avec une vraie marge de contexte. Le même modèle exige 24 GB de VRAM dédiée avant même de compter le reste — et très peu de cartes seules l'ont. La capacité par unité d'argent est tout l'argument du Mac : la tranche 36–128 GB est un territoire que les cartes dédiées grand public ne couvrent simplement pas.
L'écosystème : MLX et llama.cpp
Les deux voies sont saines, et vous finirez probablement par utiliser les deux :
- llama.cpp (backend Metal) — tourne partout, reçoit les formats de quant exotiques en premier, et utilise les mêmes fichiers GGUF et options que vos machines NVIDIA/AMD.
- MLX — le framework de tableaux d'Apple.
mlx-lmgénère, sert et convertit des modèles, et il est souvent le premier avec des noyaux spécifiques Apple. Hugging Face héberge les conversions MLX-community de la plupart des familles populaires.
Aucun n'exige CUDA — c'est aussi la limite structurelle : vLLM, SGLang et TensorRT-LLM ne tournent pas sur macOS à ce jour. Pour du service compatible OpenAI, utilisez le serveur intégré de llama.cpp ou mlx-lm server.
Les limites
- Thermique. Les puces classe Max dans un MacBook se freinent en génération soutenue ; un Mac Studio tient ses fréquences indéfiniment. Les laptops sont pour les pointes, les Studios pour le service.
- Pas de CUDA. Si un tuto dit vLLM ou SGLang, cette voie est fermée. llama.cpp et MLX couvrent chat, embeddings et service assez bien pour que ça n'importe que rarement — jusqu'à ce que ça importe.
- Retard de quants. Les quants et noyaux de pointe atterrissent d'abord dans llama.cpp ; les conversions MLX suivent en quelques jours à semaines.
- Le swap n'est pas de la VRAM. Quand la pression mémoire pousse les poids dans le swap, la performance ne se dégrade pas — elle s'effondre. Dimensionnez les modèles sous la RAM physique moins les frais généraux de l'OS. Point final, aucune exception ne vaut la peine.
Conseils d'achat
- 16 GB : 7–8B Q4 seulement. Décontracté.
- 24–36 GB : 14B à l'aise ; 32B Q4 sur 36 GB avec un contexte prudent.
- 48–64 GB : 32B Q4/Q5 avec du vrai contexte ; 70B IQ3/Q4 à 64 GB avec de la patience pour sa lenteur relative aux poids déplacés.
- Max ou Ultra pour la bande passante — c'est ce qu'achète la vitesse de décodage. Base M pour petits modèles, Whisper et vision.
Bonus hors LLM : ces machines sont excellentes pour la transcription Whisper et les encodeurs de vision. Mémoire unifiée plus unités SIMD musclées rendent les pipelines audio et image disproportionnément rapides par watt — un Mac Studio silencieux est une vraie bête de somme multimodale.
Voir aussi : inférence sur CPU · vitesse · quantification