GPU kiezen voor LLMs: hoeveel GPU-geheugen heb ik nodig?
Automatische vertaling
Dit artikel is automatisch vertaald vanuit de oorspronkelijke Engelse versie.
Schat het geheugen voor weights, KV cache en runtime voordat je de snelheid van GPUs vergelijkt. Meet daarna bandbreedte, rekenkracht en verbindingen met de beoogde verdeling van verzoeken. Een model waarvan de weights in het geheugen passen, kan toch de geheugencapaciteit overschrijden wanneer meerdere lange verzoeken tegelijk worden verwerkt.
Gebruik het vereiste aantal gelijktijdige verzoeken en de vereiste sequentielengten in de geheugenberekening.
Maak de geheugenschatting
Een model met 7 miljard parameters opgeslagen in FP16 gebruikt ongeveer 14 GB voor alleen de waarden van de weights. INT4 vermindert die waarden tot ongeveer 3.5 GB, maar schaalfactoren, niet-gekwantiseerde tensoren en runtime-allocaties nemen extra geheugen in. De werkelijke allocatie van het artefact is het relevante getal.
Schat vervolgens het geheugen van de KV cache op basis van de architectuur, cacheprecisie, actieve sequentielengten en batchgrootte. Neem tot slot tijdelijke activations, buffers, overhead van de geheugenallocator en een op metingen gebaseerde reserve mee.
In een eenvoudig rekenvoorbeeld vragen 14 GB aan weights plus een gemeten KV-allocatie van 4 GB al 18 GB, voordat andere allocaties worden meegerekend. Dat laat weinig ruimte over op een kaart van 24 GB als runtime-overhead of langere verzoeken de rest gebruiken. Dit toont niet aan dat elk model met 7 miljard parameters een cache van 4 GB heeft.
Bandbreedte en GPU-verbindingen veranderen de vergelijking
| GPU-variant | Gepubliceerde geheugencapaciteit | Gepubliceerde geheugenbandbreedte |
|---|---|---|
| H100 SXM | 80 GB HBM3 | 3.35 TB/s |
| H200 SXM | 141 GB HBM3e | 4.8 TB/s |
| B200 SXM | 180 GB HBM3e | Tot 8 TB/s |
Deze waarden komen uit NVIDIA’s HGX-referentiearchitectuur. Ze beschrijven specifieke varianten en zijn geen onderling uitwisselbare specificaties voor elke kaart met dezelfde familienaam.
Bij decode met kleine batches kan het lezen van weights en de attention-toestand ervoor zorgen dat geheugenbandbreedte belangrijker is dan de maximale throughput van matrixberekeningen. Grotere batches, lange prefills en geoptimaliseerde kernels kunnen veranderen welke resource de prestaties beperkt. Als een model meerdere GPUs nodig heeft, neem dan de tijd voor collectieve communicatie en de beschikbare verbindingen tussen apparaten mee.
Vergelijk de werkelijke kosten per geslaagd verzoek bij dezelfde doelen voor kwaliteit en latency. Neem de benodigde GPU-groepen en ongebruikte capaciteit mee; de huidige huurprijs alleen laat de serving-efficiëntie niet zien.
Het onderdeel over GPU-keuze in de LLM Engineering Guide vergelijkt andere apparaten. Gebruik geheugenplanning voor de KV cache om de variabele allocatie te schatten.