llamacpp Inference Speed Calculator
Пресеты GPU:
RTX 3070 (8GB)
RTX 3090 (24GB)
RTX 4090 (24GB)
RTX 4060 Ti 16GB
H100 SXM (80GB)
A100 SXM (80GB)
MacBook M3 Max (36GB)
MacBook M2 (8GB)
GPU
Пропускная способность памяти (GB/s)
RTX 3070 = 448, RTX 4090 = 1008, H100 = 3350
VRAM (GB)
Резерв VRAM (compute buf + система, GB)
llama.cpp: CUDA-контекст + compute buffer. Влияет на макс. контекст
Модель
Параметры
GGUF: general.size_label "4B". Нужен только для Auto-оценки веса
Вес модели (GB)
Auto
Реальный вес .gguf (файлы Q4≈2.81, Q8≈4.31). Auto = params × bpw/8 — занижает: эмбеддинги/lm_head в F16
Квантование модели
Q2_K (1.56 bpw)
Q3_K_S (3.11 bpw)
Q3_K_M (3.37 bpw)
Q3_K_L (3.64 bpw)
Q4_K_S (4.33 bpw)
Q4_K_M (4.58 bpw)
Q5_K_S (5.23 bpw)
Q5_K_M (5.46 bpw)
Q6_K (6.11 bpw)
Q8_0 (7.55 bpw)
F16 (16.00 bpw)
F32 (32.00 bpw)
GGUF: general.file_type (Q4_K_M). Влияет на скорость только через вес модели
Контекст
Размер контекста (токены)
Длина промпта для расчёта VRAM
Макс. контекст модели (arch. limit)
GGUF: qwen35.context_length — верхняя граница архитектуры (не память)
KV Cache
Квантование KV cache
F16 (2 bytes/value)
F32 (4 bytes/value)
Q8_0 (1 byte/value)
Q6_K (0.75 bytes/value)
Q5_K (0.625 bytes/value)
Q4_K (0.5 bytes/value)
Q3_K (0.375 bytes/value)
Q2_K (0.25 bytes/value)
llama.cpp квантует KV cache отдельно от модели. Дефолт llama.cpp = F16. По замерам: Qwen(F16), Nanbeige(F32)
KV cache на 1 токен
2 × nKV_layers × n_kv_head × head_dim × bytes_per_value. Считается автоматически из раздела «Архитектура» и кванта KV
Архитектура (из GGUF: qwen35.*)
Заполнено под Qwen3.5-4B. Значения берутся из метаданных модели (llama-cli -m model.gguf).
embedding_length (hidden_size)
GGUF: qwen35.embedding_length / config.json: hidden_size
n_layers (block_count)
GGUF: qwen35.block_count — всего слоёв трансформера
n_head (head_count)
GGUF: qwen35.attention.head_count
n_kv_head (head_count_kv)
GGUF: qwen35.attention.head_count_kv. GQA: обычно < n_head
KV слоёв (KV cache layers)
Сколько из n_layers реально держат KV-кэш. Обычный dense: = n_layers. Гибрид (SSM): только слои полного attention. Qwen3.5: full_attention_interval=4 → слой 0,4,8...32 = 9
head_dim (key_length)
Auto
GGUF: qwen35.attention.key_length. Auto = embedding_length / n_head (для GQA-моделей обычно ≠, ставь из меты)
num_loops (кратность чтения весов)
GGUF: qwen35.num_loops (есть только у loop-архитектур, напр. nanbeige=2). Обычный dense = 1
Дополнительно
Оверхед на токен (мс)
Фиксированные затраты на токен: 1/89.11 − 2.806/448 ≈ 5 мс (RTX 3070)
GQA ratio
n_head / n_kv_head
Формулы:
время/токен = num_loops × вес_модели ÷ bandwidth + оверхед
т/с = 1000 ÷ время/токен
KV/токен = 2 × KV_слоёв × n_kv_head × head_dim × байт(KV_quant)
макс.ctx = (vram − вес_модели − резерв) × 2³⁰ ÷ KV/токен
Результаты
--
Генерация (ток/с)
--
Prefill (ток/с)
--
Макс. контекст по VRAM
--
Модель в VRAM
--
KV кэш в VRAM
--
Время на токен
Детали расчёта