Tutti i 6 data center operativi

Pagamento in cripto · Nessuna verifica d’identità · Accesso root in in meno di 5 minuti

Guida Dimensionamento · 9 min di lettura

Quanta VRAM serve davvero a un modello.

Sono due numeri a deciderlo: i pesi, che sono fissi, e la cache KV, che cresce con la quantità di contesto servito. Quasi ogni risposta sbagliata nasce dallo stimare il secondo a partire dal primo.

La risposta breve

Weights
Parametri in miliardi × byte per parametro. 70B a 4 bit sono 35 GB.
Cache KV
2 × livelli × teste KV × dimensione della testa × byte, per token. Non ha nulla a che vedere con il numero di parametri.
Overhead
Aggiunga circa il 15% per attivazioni, contesto CUDA e frammentazione dell’allocatore.
La trappola
Quantizzare i pesi a 4 bit non quantizza la cache. Resta FP16 in ogni stack comune.

La formula

Non esiste qui una regola empirica che sopravviva al confronto con un secondo modello. L’intero calcolo è di tre righe, e vale la pena farle piuttosto che fidarsi di un moltiplicatore.

VRAM totale, in GB
# 1. Weights
weights_gb   = parameters_in_billions × bytes_per_parameter

# 2. KV cache, per token — then multiplied by the context you serve
bytes_per_tok = 2 × layers × kv_heads × head_dim × cache_bytes
cache_gb      = bytes_per_tok × context_tokens × batch / 1024³

# 3. Everything else
total_gb      = (weights_gb + cache_gb) × 1.15

Il 2 c’è perché ci sono due tensori per token, K e V. bytes_per_parameter è 2 per BF16, 1 per FP8, 0.5 per 4-bit. cache_bytes è un numero separato, e questa separazione è la fonte più comune in assoluto di una risposta sbagliata — consulti qui sotto.

Pesi

La metà facile. È esattamente lineare nel numero di parametri, e l’unica decisione è la precisione.

Memoria dei pesi per precisione, per una selezione di dimensioni di modello
Modello BF16 / FP16FP84-bit (AWQ, GPTQ)
Llama 3.1 8B8B di parametri 16.0 GB 8.0 GB 4.0 GB
Qwen 3 32B32B di parametri 64.0 GB 32.0 GB 16.0 GB
Llama 3.3 70B70B di parametri 140.0 GB 70.0 GB 35.0 GB
Llama 3.1 405B405B di parametri 810.0 GB 405.0 GB 202.5 GB

La quantizzazione a 4 bit ha un costo in qualità, e quanto dipende dal modello molto più che dal metodo. È il compromesso giusto quando fa la differenza tra una scheda e quattro; è un compromesso scadente quando si è già ampiamente nei margini.

La cache KV

La metà difficile, quella che decide se una macchina è adeguata a 4k e inutilizzabile a 128k. Dipende dai livelli e dalle teste KV — non da quanto è grande il modello.

Due modelli di dimensioni molto diverse, a confronto. Llama 3.3 70B ha 80 livelli e 8 teste KV, quindi 320 KB per token. Gemma 3 27B — un terzo dei parametri — ha 62 livelli e 16 teste KV, quindi 496 KB per token, cioè 1.6× di più. Qualsiasi stima ricavata dal numero di parametri arriva alla conclusione opposta.
Dimensione della cache KV per modello e lunghezza del contesto, a precisione cache FP16, una richiesta
Modello Per token contesto di 4kcontesto di 8kcontesto di 32kcontesto di 128k
Llama 3.1 8B 32 livelli · 8 teste KV 128 KB 0.5 GB 1.0 GB 4.0 GB 16.0 GB
Gemma 3 27B 62 livelli · 16 teste KV 496 KB 1.9 GB 3.9 GB 15.5 GB 62.0 GB
Llama 3.3 70B 80 livelli · 8 teste KV 320 KB 1.3 GB 2.5 GB 10.0 GB 40.0 GB
DeepSeek V3 671B-A37B (MoE) Attenzione latente 70 KB 0.3 GB 0.5 GB 2.2 GB 8.8 GB
Llama 3.1 405B 126 livelli · 8 teste KV 504 KB 2.0 GB 3.9 GB 15.8 GB 63.0 GB

Legga prima l’ultima colonna, poi la prima. A un contesto di 4k la cache è un errore di arrotondamento trascurabile per ogni modello qui presente; a 128k è più grande dei pesi di un modello da 70B a 4 bit. DeepSeek V3 è l’eccezione perché la sua attenzione latente comprime la cache per progettazione — motivo per cui resta utilizzabile a contesti lunghi pur essendo il modello più grande dell’elenco.

Dove le stime sbagliano

Far scalare la cache in base al numero di parametri. L’errore più comune, ed è quello mostrato sopra. Un modello da 27B può richiedere più cache di uno da 70B.

Supporre che pesi a 4 bit significhino una cache a 4 bit. Non è così. AWQ e GPTQ quantizzano solo i pesi; la cache resta FP16 a meno che non si attivi esplicitamente la cache KV FP8. Un modello da 70B a 4 bit e contesto 128k è 35 GB di pesi e 40 GB di cache.

Dimensionare per una sola richiesta. La cache è per sequenza concorrente. Servire otto utenti contemporaneamente richiede otto volte la cache — consulti qui sotto.

Dimenticare l’overhead. Le attivazioni, il contesto CUDA e la frammentazione dell’allocatore sono reali. Il 15% è un margine deliberatamente prudente; ignorarlo del tutto è il modo in cui un modello che «ci sta» non riesce a caricarsi.

Sommare la VRAM totale tra più schede. Quattro schede da 24 GB non sono una scheda da 96 GB. Il tensor parallelism può suddividere un modello tra loro, ma ogni livello deve poi sincronizzarsi sul collegamento — consulti la guida a NVLink.

Dimensionare un MoE in base ai parametri attivi. DeepSeek V3 attiva 37B per token, ma è necessario tenere in memoria tutti i 671B. I parametri attivi prevedono la velocità; i parametri totali decidono se il modello si carica affatto.

Esempi svolti

Memoria totale richiesta, pesi più cache più overhead, a un contesto di 8k e una richiesta. È lo stesso calcolo che il configuratore esegue su ogni configurazione del catalogo.

VRAM totale richiesta a un contesto di 8k, per modello e precisione
Modello BF16 / FP16FP84-bit (AWQ, GPTQ) Il nodo più piccolo che ci sta
Llama 3.1 8B 8B di parametri 20 GB 10 GB 6 GB NVIDIA L4 $125/mese · su una scheda · ~34 tok/s
Mistral Small 24B 24B di parametri 57 GB 28 GB 15 GB NVIDIA L4 $125/mese · su una scheda · ~11 tok/s
Gemma 3 27B 27B di parametri 67 GB 33 GB 20 GB NVIDIA L4 $125/mese · su una scheda · ~10 tok/s
Qwen 3 32B 32B di parametri 76 GB 38 GB 21 GB NVIDIA L4 $125/mese · su una scheda · ~8 tok/s
Llama 3.3 70B 70B di parametri 164 GB 82 GB 43 GB 2 × NVIDIA L4 $285/mese · suddiviso sul nodo · ~7 tok/s
Mixtral 8×22B (MoE) 39B attivi su 141B 326 GB 163 GB 83 GB 4 × NVIDIA L4 $564/mese · suddiviso sul nodo · ~4 tok/s
Qwen 3 235B-A22B (MoE) 22B attivi su 235B 542 GB 271 GB 137 GB 8 × NVIDIA L4 $1,106/mese · suddiviso sul nodo · ~10 tok/s
DeepSeek V3 671B-A37B (MoE) 37B attivi su 671B 1,544 GB 772 GB 386 GB 8 × NVIDIA A100 PCIe $7,906/mese · suddiviso sul nodo · ~37 tok/s
Llama 3.1 405B 405B di parametri 936 GB 468 GB 237 GB 10 × NVIDIA L4 $1,371/mese · suddiviso sul nodo · ~3 tok/s

L’ultima colonna è il nodo più economico del nostro catalogo che contiene il modello a 4 bit e contesto 8k, con la velocità di generazione a flusso singolo consentita dalla larghezza di banda della memoria. I valori di throughput sono deliberatamente conservativi e calibrati su misurazioni pubblicate — li consideri un minimo garantito, non una promessa.

Servire più di una richiesta

È qui che una macchina dimensionata per una demo diventa una macchina incapace di servire un prodotto. I pesi si pagano una volta sola; la cache si paga per sequenza concorrente.

VRAM totale per Llama 3.3 70B a 4 bit, per richieste concorrenti e contesto
Richieste concorrenti contesto di 4kcontesto di 8kcontesto di 32k
1 richiesta 42 GB una scheda da 80 GB 43 GB una scheda da 80 GB 52 GB una scheda da 80 GB
4 richieste 46 GB una scheda da 80 GB 52 GB una scheda da 80 GB 86 GB una H200
16 richieste 63 GB una scheda da 80 GB 86 GB una H200 224 GB nodo multi-GPU
64 richieste 132 GB una H200 224 GB nodo multi-GPU 776 GB nodo multi-GPU

Llama 3.3 70B a 4 bit sono 35 GB di pesi in ogni caso. Tutto ciò che in quella tabella supera i 35 GB è cache. Ecco perché «funzionava bene sul mio laptop» e «è crollato in produzione» sono lo stesso modello sulla stessa scheda.

Due modi per recuperare memoria di cache. Attivi la cache KV FP8 se il suo stack la supporta — dimezza i numeri sopra a un costo in qualità di norma impercettibile. E limiti --max-model-len al contesto effettivamente servito: vLLM riserva la cache per il massimo dichiarato, quindi dichiarare 128k quando si serve 8k spreca sedici volte la memoria necessaria.

Quale macchina ne consegue

Tre regole pratiche che derivano da tutto quanto sopra, nell’ordine in cui contano.

  1. Una scheda sola batte più schede, ogni volta che è possibile. Niente sharding, niente sincronizzazione tra livelli, nessuna interconnessione a cui pensare. Se il suo modello, al suo contesto, ci sta su una scheda singola, acquisti quella scheda.
  2. Dimensioni in base al contesto reale e alla concorrenza reale, non al massimo dichiarato dal modello. Il massimo dichiarato è una capacità, non un requisito.
  3. Quando deve suddividere, preferisca NVLink. Suddividere su quattro schede PCIe funziona; suddividere su quattro schede NVLink funziona ed è sensibilmente più veloce. La prossima guida tratta esattamente di quando vale la pena pagare quella differenza.

Il configuratore esegue questo calcolo in tempo reale su tutte le 41 configurazioni: scelga un modello, una precisione e una lunghezza di contesto, e Le indicherà quali nodi lo contengono, quali lo contengono su una scheda singola, e quanto costa ciascuno al mese. Usa la formula di questa pagina, quindi se non è d’accordo con i nostri calcoli può ora dire esattamente dove.

Verifichi il suo modello su ogni macchina che noleggiamo.

Il configuratore esegue il calcolo qui sopra su tutte le 41 configurazioni, prima che paghi qualsiasi cosa.

Accedi

Console, ricevute e accesso fuori banda.

Non ha ancora un account?

Non esiste una registrazione separata. Il suo account viene creato mentre effettua il suo primo ordine — sceglie l’email e la password nella fase di pagamento, e la console è già aperta quando lo è la macchina.

Configura un server

Language