Ga naar hoofdinhoud

VRAM Calculator User Guide

Deze handleiding legt uit hoe u de tool VRAM Calculator gebruikt die beschikbaar is op het Cordatus Platform.

De VRAM Calculator is een krachtige tool waarmee u kunt bepalen welk LLM (Large Language Model) op welke GPU kan draaien met specifieke configuraties. Deze tool berekent de vereiste GPU-VRAM door rekening te houden met factoren zoals modelgewichten, KV Cache, activatiegeheugen en systeemoverhead, zodat u uw implementaties vooraf kunt plannen.

Meer details → Application Hub Overview | Application Hub Quickstart | Standard Application Launch Guide | NVIDIA AI Dynamo Guide | User Models Guide


Wat is de VRAM Calculator?

De VRAM Calculator is een tool die het totale GPU-geheugen berekent dat nodig is om een LLM-model uit te voeren, en visualiseert hoe dit geheugen wordt verdeeld.

Volledige handleiding VRAM Calculator

 

De berekeningen omvatten de volgende componenten:

  • Model Weights: de geheugenruimte die door de parameters van het model wordt ingenomen
  • KV Cache: Key-Value cache gebruikt in Transformer-modellen
  • Overhead/Activation Memory: systeemoverhead of activatiegeheugen
  • Free VRAM: resterende beschikbare geheugenruimte

3. Toegang tot de VRAM Calculator

U kunt de VRAM Calculator op twee verschillende manieren openen:

  1. Standalone Mode:
    U kunt deze onafhankelijk gebruiken door de optie VRAM Calculator in het hoofdmenu te selecteren.

  2. Device Mode:
    Nadat u verbinding heeft gemaakt met een specifiek apparaat, kunt u berekeningen uitvoeren met de GPU's van dat apparaat.


4. Modelselectie

4.1 Geregistreerde modellen

De VRAM Calculator toont een lijst met LLM-modellen die vooraf zijn gedefinieerd en getest in het Cordatus-systeem.

  • Modelselectie: selecteer het gewenste model in de dropdownlijst
  • Zodra een model is geselecteerd, worden de in het systeem geregistreerde modelparameters (hidden_size, num_params, attention_heads, enz.) automatisch geladen

4.2 Nieuwe modellen toevoegen (Search Huggingface Model)

Als het gewenste model niet in het systeem is geregistreerd, kunt u de functie Search Huggingface Model gebruiken.

Ondersteunde formaten:

  1. Hugging Face-URL:
    https://huggingface.co/meta-llama/Llama-2-7b-hf

  2. Modelnaam:
    meta-llama/Llama-2-7b-hf

Gebruiksstappen:

  1. Plak de modelnaam of URL in het veld Search Huggingface Model
  2. Klik op de knop Find
  3. Als het model succesvol is gevonden:
    • wordt het model automatisch toegevoegd aan de lijst met geregistreerde modellen
    • worden de modelparameters opgehaald via de Hugging Face API
    • wordt een succesbericht weergegeven (bijv. "Model 'meta-llama/Llama-2-7b-hf' found with 7B parameters")
  4. Als het model niet wordt gevonden, wordt een foutmelding weergegeven

💡 Opmerking: Met deze functie kunt u zowel bijdragen aan het Cordatus-systeem als nieuwe modellen toevoegen voor gebruik in de VRAM Calculator.


5. GPU-selectie

5.1 Standalone Mode

Selecteer het GPU-model in de dropdownlijst. GPU-modellen en VRAM-capaciteiten die in het Cordatus-systeem zijn geregistreerd, worden weergegeven:

  • NVIDIA A100 (80GB)
  • NVIDIA H100 (80GB)
  • NVIDIA V100 (32GB)
  • NVIDIA RTX 4090 (24GB)
  • en andere GPU-modellen

5.2 Device Mode

In device mode worden de werkelijke GPU's van het verbonden apparaat automatisch gedetecteerd en weergegeven:

  • GPU-naam en VRAM-capaciteit worden weergegeven
  • Als er meerdere GPU's zijn, worden deze standaard allemaal geselecteerd
  • U kunt de selectie aanpassen door gewenste GPU's te verwijderen
  • De totale VRAM-capaciteit van de geselecteerde GPU's wordt automatisch berekend

⚙️ Belangrijk: In Device Mode wordt het aantal GPU's automatisch bepaald en is de instelling GPU Count uitgeschakeld.


6. Configuratie-instellingen

Na het selecteren van een model en GPU worden de basisconfiguraties automatisch ingesteld en begint de berekening. U kunt de volgende parameters aanpassen:

6.1 GPU Count

⚠️ Opmerking: Deze instelling is alleen beschikbaar in Standalone Mode. In Device Mode wordt het aantal geselecteerde GPU's automatisch bepaald.

  • Beschrijving: het aantal GPU's dat wordt gebruikt om het model uit te voeren
  • Standaardwaarde: 1
  • Gebruik: u kunt de totale VRAM-capaciteit vergroten door meerdere GPU's te gebruiken
  • Effect: Totale systeem-VRAM = GPU-VRAM × GPU Count × GPU Memory Utilization

Voorbeeld:

  • 1 × NVIDIA A100 (80GB) = 80GB totale VRAM
  • 4 × NVIDIA A100 (80GB) = 320GB totale VRAM

6.2 Quantization

  • Beschrijving: het formaat waarin de modelgewichten in het geheugen worden opgeslagen

  • Standaardwaarde: BF16 (16-bit Brain Floating Point)

  • Opties:

    • BF16 (16-bit): hoogste nauwkeurigheid, hoogste geheugengebruik
    • FP16 (16-bit): hoge nauwkeurigheid, hoog geheugengebruik
    • FP8 (8-bit): gemiddelde nauwkeurigheid, gemiddeld geheugengebruik
    • INT8 (8-bit): goede nauwkeurigheid, lager geheugengebruik
    • FP4 (4-bit): lage nauwkeurigheid, minimaal geheugengebruik
    • INT4 (4-bit): laagste nauwkeurigheid, minimaal geheugengebruik
  • Effect: naarmate de quantization-waarde afneemt:

    • nemen de modelgewichten minder ruimte in
    • kunt u grotere modellen op kleinere GPU's uitvoeren
    • kan de nauwkeurigheid van het model afnemen

Berekening:

Model Weight Size = (Num Parameters × Quantization Bits) / 8 / (1024³)

Voorbeeld:

  • Model met 7B parameters
  • FP16 (16-bit): 7B × 16 / 8 = 14GB
  • INT8 (8-bit): 7B × 8 / 8 = 7GB
  • INT4 (4-bit): 7B × 4 / 8 = 3,5GB

6.3 Sequence Length

  • Beschrijving: het maximale aantal tokens dat het model tegelijk kan verwerken
  • Standaardwaarde: 1024
  • Bereik: 1024 - 262144 (schuifregelaar met 9 verschillende waarden: 1K, 2K, 4K, 8K, 16K, 32K, 64K, 128K, 256K)
  • Handmatige invoer: u kunt in plaats van de schuifregelaar ook direct een getal invoeren
  • Effect:
    • heeft direct invloed op de grootte van de KV Cache
    • heeft invloed op de grootte van het Activation Memory
    • een langere sequentie vereist meer VRAM

Berekening van KV Cache:

KV Cache = (Batch Size × Sequence Length × Num Key-Value Heads × Head Dimension × 2 × Num Layers × Quantization Bytes) / GB

Berekening van Activation Memory:

Activation = (Sequence Length × Batch Size × (18 × Hidden Size + 4 × Intermediate Size)) / GB

Voorbeeldtoepassingen:

  • 1024-2048: korte conversaties, snelle reacties
  • 4096-8192: middellange teksten, codegeneratie
  • 16384-32768: lange documenten, gedetailleerde analyses
  • 65536+: zeer lange teksten, boekanalyse

6.4 Batch Size

  • Beschrijving: het aantal aanvragen dat gelijktijdig parallel wordt verwerkt
  • Standaardwaarde: 1
  • Bereik: 1 - 512 (of meer)
  • Effect:
    • heeft direct invloed op de grootte van de KV Cache
    • heeft invloed op de grootte van het Activation Memory
    • een hogere batchgrootte betekent meer doorvoer, maar ook meer VRAM

Voorbeeld:

  • Batch Size = 1: één gebruiker, laag VRAM-gebruik
  • Batch Size = 8: 8 parallelle aanvragen, gemiddeld VRAM-gebruik
  • Batch Size = 32: hoge doorvoer, hoog VRAM-gebruik

6.5 GPU Memory Utilization

  • Beschrijving: welk percentage van de totale VRAM van de GPU wordt gebruikt voor het model
  • Standaardwaarde: 0,90 (90%)
  • Bereik: 0,0 - 1,0 (0% - 100%)
  • Stapgrootte schuifregelaar: 0,01 (1%)
  • Waarom niet 100%?
    • het besturingssysteem en de drivers van de GPU vereisen geheugen
    • er is ruimte nodig voor CUDA-kernels en andere systeembewerkingen
    • 90-95% is het optimale bereik

Effect:

Available System VRAM = GPU VRAM × GPU Count × GPU Memory Utilization

Voorbeeld:

  • NVIDIA A100: 80GB × 0,90 = 72GB beschikbare VRAM
  • NVIDIA A100: 80GB × 1,0 = 80GB beschikbare VRAM (risicovol)

6.6 Calculation Type

Er worden twee verschillende methoden voor de overheadberekening aangeboden:

Overhead (eenvoudige aanpak)

  • Voegt een overhead toe die gelijk is aan 20% van de modelgewichten
  • Berekening: Overhead = Model Weights × 0.20
  • Gebruik: voor een snelle en eenvoudige schatting
  • Voordeel: eenvoudig te begrijpen
  • Nadeel: minder nauwkeurig

Activation (gedetailleerde aanpak)

  • Vaste 1,5GB + Activation Memory
  • Berekening: Overhead = 1.5 GB + Activation Memory
  • Activation Memory is afhankelijk van de modelarchitectuur en de sequentie-/batchparameters
  • Gebruik: voor een nauwkeurigere berekening
  • Voordeel: nauwkeurigere resultaten
  • Nadeel: complexer

💡 Aanbeveling: gebruik de modus Activation voor productieomgevingen.


7. Resultatenscherm

7.1 Samenvattende statistieken (Stats Grid)

Boven in het scherm wordt een raster met 3 kolommen weergegeven:

  1. Model Weights

    • 🔵 Blauw pictogram
    • Ruimte die door de modelparameters wordt ingenomen
    • Weergegeven in GB
  2. KV Cache

    • 🟡 Oranje pictogram
    • Grootte van de Key-Value cache
    • Varieert op basis van sequentielengte en batchgrootte
  3. Overhead / Activation

    • 🟠 Amberkleurig pictogram
    • Systeemoverhead of activatiegeheugen
    • Varieert op basis van het geselecteerde berekeningstype
  4. Required VRAM

    • 🔴 Rood pictogram
    • Totaal vereiste VRAM
    • Som van Weights + KV Cache + Overhead
    • Rood gemarkeerd indien onvoldoende
  5. Available VRAM

    • 🟢 Groen pictogram
    • Totale VRAM die in het systeem beschikbaar is
    • GPU-VRAM × GPU Count × Utilization
    • Groen gemarkeerd indien voldoende
  6. Free VRAM

    • 🔵 Blauwgroen pictogram
    • Resterende vrije ruimte nadat het model is geladen
    • Available - Required

7.2 Grafiek (donutgrafiek)

Links wordt een cirkeldiagram weergegeven:

Onderdelen van de grafiek:

  • 🔵 Blauw segment: Model Weights
  • 🟠 Oranje segment: Overhead
  • 🟡 Geel segment: KV Cache
  • 🟢 Groen segment: Free VRAM

Statussen van de grafiek:

  • No Data: grijze tekst "No Data" wordt weergegeven
  • Voldoende VRAM: het groene segment is zichtbaar
  • Onvoldoende VRAM: het groene segment is niet zichtbaar, alleen de gebruikte gebieden worden weergegeven

7.3 Gedetailleerde metrics

Rechts wordt een gedetailleerde lijst met metrics weergegeven:

  1. Model Weights: grootte van de modelgewichten in GB
  2. Overhead: systeemoverhead (afhankelijk van het berekeningstype)
  3. KV Cache: grootte van de Key-Value cache
  4. Activation Memory: activatiegeheugen (in de modus Activation)
  5. Free VRAM: resterende vrije ruimte (groen gemarkeerd)

Gebruiksbalk:

  • Verhouding tussen vereiste VRAM en totale VRAM
  • Weergegeven als percentage
  • Onder 100%: paarse kleur (✅ voldoende)
  • Boven 100%: rode kleur (❌ onvoldoende)

7.4 Statusoverzicht

Onderaan wordt een grote statuskaart weergegeven:

Voldoende VRAM

  • ✅ Groen pictogram en kader
  • Titel: "VRAM is Sufficient"
  • Beschrijving: informatie over de totaal vereiste en beschikbare VRAM
  • Kleur: groentinten

Voorbeeldbericht:

✅ VRAM is Sufficient
Your configuration requires 45.2 GB of VRAM,
and you have 72.0 GB available.

Onvoldoende VRAM

  • ❌ Rood pictogram en kader
  • Titel: "VRAM is Insufficient"
  • Beschrijving: informatie over de totaal vereiste en beschikbare VRAM
  • Suggesties: verhoog het aantal GPU's of verlaag het quantization-niveau

Voorbeeldbericht:

❌ VRAM is Insufficient
Your configuration requires 95.8 GB of VRAM,
but you only have 72.0 GB available.