# Сколько видеопамяти нужно для LLM?

> Сколько видеопамяти (VRAM) нужно LLM? Короткие ответы для моделей 7B, 14B, 32B, 70B и 405B в BF16, FP8 и 4 битах, KV-кэш по длине контекста и подходящий GPU.

Источник: https://fullgpu.com/ru/blog/vram-for-llms  
Обновлено: 2026-10-22  
Издатель: FullGPU (https://fullgpu.com/)

Сколько видеопамяти (VRAM) нужно для LLM (большой языковой модели)? В первом приближении это веса модели плюс KV-кэш, который растёт с длиной контекста и с числом одновременно обслуживаемых запросов, плюс 10–30% на активации и накладные расходы среды выполнения. При обучении к этому добавляются градиенты и состояния оптимизатора. В этом руководстве — формулы, расчёты на реальных цифрах для Llama 3.1 8B и 70B и сопоставление результатов с GPU от 32 до 288 ГБ. Если не хочется считать вручную, [калькулятор видеопамяти](https://fullgpu.com/ru/tools/vram-calculator) сделает это за вас.

## Сколько видеопамяти нужно для LLM: формула

При инференсе память складывается из трёх частей:

```
VRAM     ≈ weights + KV cache + overhead
weights  = parameters × bytes per parameter
KV cache = 2 × layers × KV heads × head dim × bytes per value × tokens in flight
overhead = activations, CUDA context, engine buffers (plan 10-30%)
```

На один параметр приходится 2 байта в BF16 или FP16, 1 байт в FP8 или INT8 и 0,5 байта в 4-битных форматах. Множитель «tokens in flight» (токены в обработке) — это длина контекста, умноженная на число последовательностей, которые обслуживаются одновременно. Все размеры в статье указаны в десятичных гигабайтах (миллиард байт) и намеренно приблизительны: в реальных чекпоинтах часть слоёв хранится в более высокой точности, а движки инференса выделяют память блоками.

## Объём весов модели при разной точности

Веса — это нижняя граница. Если они не помещаются, всё остальное уже неважно. Умножьте число параметров на число байт на параметр:

| Параметры | BF16 / FP16 | FP8 / INT8 | 4 бита |
| --- | --- | --- | --- |
| 8B | 16 ГБ | 8 ГБ | 4 ГБ |
| 14B | 28 ГБ | 14 ГБ | 7 ГБ |
| 32B | 64 ГБ | 32 ГБ | 16 ГБ |
| 70B | 140 ГБ | 70 ГБ | 35 ГБ |
| 120B | 240 ГБ | 120 ГБ | 60 ГБ |
| 405B | 810 ГБ | 405 ГБ | 203 ГБ |

Значения в столбцах FP8 и «4 бита» считайте минимальными. Квантованные форматы хранят рядом с весами коэффициенты масштабирования, а в квантованных чекпоинтах слой эмбеддингов и выходной слой обычно остаются 16-битными. В небольших моделях эти слои весят относительно больше: в Llama 3.1 8B две эти матрицы содержат около 1,05 млрд параметров — примерно 2,1 ГБ в BF16, а это больше половины того, что занимает вся остальная модель в 4 битах. Точность влияет и на качество, причём при 4 битах сильнее, чем при FP8; компромиссы разобраны в нашей статье [о точности FP8 и FP4](https://fullgpu.com/ru/blog/fp8-fp4-precision-explained).

## KV-кэш: память, которая растёт вместе с контекстом

Во время генерации модель хранит вектор ключа и вектор значения для каждого токена, в каждом слое, для каждой обслуживаемой последовательности. Это и есть KV-кэш. При длинных контекстах или большом числе одновременных пользователей он может превысить объём весов.

```
KV bytes per token = 2 × layers × KV heads × head dim × bytes per value
KV cache           = KV bytes per token × context length × concurrent sequences
```

Именно на множителе «KV heads», то есть на числе KV-голов, современные архитектуры экономят память. В Llama 3.1 используется механизм grouped-query attention: у модели 70B — 64 головы запросов, но только 8 KV-голов, поэтому её кэш в восемь раз меньше, чем понадобился бы при полном многоголовом внимании (multi-head attention). Для опубликованных архитектур и 16-битного кэша:

- **Llama 3.1 8B** (32 слоя, 8 KV-голов размерностью 128): 2 × 32 × 8 × 128 × 2 байта = 131 072 байта, около 0,13 МБ на токен.
- **Llama 3.1 70B** (80 слоёв, 8 KV-голов размерностью 128): 2 × 80 × 8 × 128 × 2 байта = 327 680 байт, около 0,33 МБ на токен.

| Контекст × одновременные последовательности | Токенов в обработке | Llama 3.1 8B | Llama 3.1 70B |
| --- | --- | --- | --- |
| 8 192 × 1 | 8 192 | 1,1 ГБ | 2,7 ГБ |
| 8 192 × 16 | 131 072 | 17,2 ГБ | 42,9 ГБ |
| 32 768 × 1 | 32 768 | 4,3 ГБ | 10,7 ГБ |
| 32 768 × 8 | 262 144 | 34,4 ГБ | 85,9 ГБ |
| 131 072 × 1 | 131 072 | 17,2 ГБ | 42,9 ГБ |
| 131 072 × 4 | 524 288 | 68,7 ГБ | 171,8 ГБ |

Отсюда три вывода. Одному диалогу на 128K токенов с моделью 70B нужно около 43 ГБ кэша — больше половины памяти H100. Шестнадцати пользователям по 8K токенов нужно ровно столько же, сколько этому одному длинному диалогу, потому что значение имеет общее число токенов в обработке. А кэш в FP8 вдвое уменьшает каждое число в таблице — поэтому движки инференса, такие как vLLM, и предлагают его как опцию.

Таблица показывает худший случай. Движки со страничным KV-кэшем (paged KV cache) выделяют блоки по мере генерации токенов, поэтому запрос, который завершился раньше, не занимает память под весь контекст. Рассчитывайте на реалистичный пик числа токенов в обработке, а не на то, что все пользователи одновременно дойдут до максимума, но убедитесь, что хотя бы один запрос максимальной длины помещается.

## Накладные расходы и запас

Веса и кэш — это ещё не всё. До загрузки модели контекст CUDA и библиотеки уже занимают память на каждом GPU — обычно от нескольких сотен мегабайт до одного-двух гигабайт. Во время прямого прохода активациям нужно рабочее пространство, и больше всего его требуется при обработке длинных промптов. Движки инференса также резервируют память под графы CUDA и буферы сэмплирования, а задачи на нескольких GPU добавляют буферы для обмена данными.

Практическое правило — закладывать 10–30% запаса сверх весов и KV-кэша: нижнюю границу — для одного GPU с хорошо изученным движком, верхнюю — для конфигураций с несколькими GPU, очень длинных промптов или обучения. В vLLM это правило реализовано явно. Он берёт фиксированную долю памяти каждого GPU (по умолчанию 90%, задаётся параметром `--gpu-memory-utilization`), загружает веса, измеряет пиковое потребление памяти активациями на тестовом проходе и отдаёт всё оставшееся под KV-кэш. Как это настроить, показано в нашем руководстве по [самостоятельному развёртыванию инференса LLM с vLLM](https://fullgpu.com/ru/blog/self-host-llm-inference-vllm).

## Пример расчёта: инференс Llama 3.1 70B

Допустим, Llama 3.1 70B должна одновременно обслуживать 16 пользователей, у каждого из которых до 8 192 токенов.

- **Веса в FP8:** около 70 ГБ, на практике чуть больше.
- **KV-кэш в BF16:** 16 × 8 192 токена × 0,33 МБ ≈ 43 ГБ.
- **Итого с запасом 15%:** (70 + 43) × 1,15 ≈ 130 ГБ.

Это помещается на один H200 со 141 ГБ. А на один H100 с 80 ГБ — нет: веса занимают почти всю его память, и на кэш остаётся несколько гигабайт — хватит на один-два запроса по 8K токенов одновременно, а не на шестнадцать. Если вдвое уменьшить кэш с помощью FP8, итог составит около 105 ГБ — для этого всё равно нужно больше одного H100.

В BF16 одни только веса занимают около 140 ГБ. На практике это исключает один H200: на кэш ничего не осталось бы. B200 со 180 ГБ вмещает веса, и после накладных расходов остаётся примерно 20 ГБ — этого хватит примерно на шесть полных запросов по 8K токенов или примерно на двенадцать с кэшем в FP8. B300 с 288 ГБ обслужит всех шестнадцать пользователей с запасом.

## Память для дообучения (fine-tuning): полное, LoRA и QLoRA

Обучению нужно гораздо больше памяти на параметр, чем инференсу, потому что GPU хранит ещё и градиенты, и состояния оптимизатора. Цифры ниже приведены без учёта активаций: они зависят от длины последовательности и размера микробатча, и их обычно держат под контролем с помощью чекпоинтинга активаций (gradient checkpointing).

| Метод | Что хранится в памяти | Модель 8B | Модель 70B |
| --- | --- | --- | --- |
| Полное дообучение, AdamW, смешанная точность | Веса и градиенты в BF16, мастер-копия весов в FP32, два момента Adam в FP32: 16–20 байт на параметр | 128–160 ГБ | 1,12–1,4 ТБ |
| LoRA на базовой модели в BF16 | Замороженные 16-битные веса плюс небольшие адаптеры и их состояния оптимизатора | Около 17 ГБ | Около 145 ГБ |
| QLoRA на 4-битной базовой модели | Замороженные 4-битные веса, 16-битные слой эмбеддингов и выходной слой, адаптеры | Около 7 ГБ | Около 40–45 ГБ |

На практике LoRA для модели 8B помещается на RTX 5090 с 32 ГБ или L40S с 48 ГБ, и для активаций ещё остаётся место. Для полного дообучения той же модели нужен B200 со 180 ГБ или B300 с 288 ГБ либо несколько GPU по 80 ГБ с шардированными состояниями оптимизатора. Для модели 70B QLoRA помещается на один H100 или H200, LoRA требует двух GPU по 80 ГБ либо одного B200 или B300, а полное дообучение — 8-GPU-сервера с B300, сервера 8× B200 при экономной настройке или сервера 8× H200 с выгрузкой состояний оптимизатора в память CPU. Каждый из этих вариантов разобран в нашем [руководстве по дообучению модели 70B](https://fullgpu.com/ru/blog/fine-tune-70b-model).

## MoE-модели (mixture of experts): в памяти нужны все эксперты

MoE-модели направляют каждый токен лишь через нескольких экспертов из множества. Это сокращает объём вычислений на токен, но не память: все эксперты должны постоянно находиться в памяти, потому что следующему токену может понадобиться любой из них. Рассчитывайте память для MoE-моделей по общему числу параметров, а число активных параметров считайте ориентиром только для вычислений.

- **Mixtral 8x7B** содержит в сумме 46,7 млрд параметров, но на каждый токен задействует лишь около 12,9 млрд. В BF16 её весам всё равно нужно около 93 ГБ — больше, чем вмещает один H100.
- **Qwen3-235B-A22B** содержит 235B параметров, из которых активны 22B: в BF16 это около 470 ГБ, что помещается на 8× H100 (640 ГБ), а в FP8 — около 235 ГБ.
- **DeepSeek-V3** содержит 671B параметров, из которых активны 37B. Даже в FP8 её веса занимают примерно 670 ГБ: больше, чем 640 ГБ сервера 8× H100, но с большим запасом укладываются в 8× H200 (1 128 ГБ) или 8× B200 (1 440 ГБ).

Размер кэша по-прежнему зависит от устройства механизма внимания. Модели DeepSeek используют Multi-head Latent Attention, который хранит сжатый кэш, поэтому для них формула выше даёт завышенную оценку. Об этом семействе — в нашем [руководстве по системным требованиям DeepSeek](https://fullgpu.com/ru/blog/deepseek-hardware-requirements).

## Какой GPU подойдёт для вашей модели

Вот как эти цифры ложатся на реальное оборудование для инференса — при умеренной длине контекста и умеренном числе одновременных запросов. «Впритык» означает, что веса помещаются, но для кэша остаётся мало места.

| GPU | Память | С запасом | Впритык |
| --- | --- | --- | --- |
| RTX 5090 | 32 ГБ | 8B в BF16, 14B в FP8, 32B в 4-битном формате | 14B в BF16 |
| L40S | 48 ГБ | 14B в BF16, 32B в FP8 | 70B в 4-битном формате |
| H100 | 80 ГБ | 32B в BF16, 70B в 4-битном формате | 70B в FP8 |
| RTX PRO 6000 | 96 ГБ | 32B в BF16, 120B в 4-битном формате | 70B в FP8 |
| H200 | 141 ГБ | 70B в FP8 с ощутимым числом одновременных запросов | 120B в FP8 |
| B200 | 180 ГБ | 120B в FP8, 70B в BF16 при умеренном числе одновременных запросов | 70B в BF16 с длинными контекстами |
| B300 или MI355X | 288 ГБ | 70B в BF16 с большими батчами, 120B в FP8 с длинными контекстами | 120B в BF16, 405B в 4-битном формате |
| 8× H100 | 640 ГБ | 405B в FP8, MoE-модель 235B в BF16 | — |
| 8× RTX PRO 6000 | 768 ГБ | 405B в FP8, через PCIe | DeepSeek-V3 в FP8 |
| 8× H200 | 1 128 ГБ | 405B в BF16, DeepSeek-V3 в FP8 | — |
| 8× B200 | 1 440 ГБ | 405B в BF16 с длинными контекстами | — |
| 8× B300 или 8× MI355X | 2 304 ГБ | DeepSeek-V3 в BF16 (около 1,34 ТБ) | — |

Два замечания о конфигурациях с несколькими GPU. Если разделить модель с помощью тензорного параллелизма, вместе с ней разделится и её KV-кэш, поэтому объём кэша растёт с числом GPU. Кроме того, важен интерконнект: в серверах HGX GPU объединены через NVLink, а карты RTX PRO 6000 и L40S обмениваются данными по PCIe — этого достаточно для запуска отдельных копий модели, но при разделении одной модели между картами такая связь работает медленнее. Рейтинг GPU по типам задач — в нашем руководстве [о лучшем GPU для инференса LLM](https://fullgpu.com/ru/blog/best-gpu-for-llm-inference).

Всё сказанное выше предполагает, что вам достаётся вся карта. Каждый GPU, который мы сдаём в аренду, — целый физический GPU, поэтому вся память из таблицы принадлежит вам и ничего не нужно вычитать на профиль vGPU или раздел MIG. Если ваша цель — 70B в FP8 с ощутимым числом одновременных запросов, варианты с одним GPU и с 8 GPU показаны на [странице NVIDIA H200](https://fullgpu.com/ru/gpus/nvidia-h200).

## Часто задаваемые вопросы

### Сколько видеопамяти нужно для запуска модели 70B?

Около 140 ГБ под веса в BF16, 70 ГБ в FP8 и 35–40 ГБ в 4-битном формате, плюс KV-кэш и 10–30% на накладные расходы. На практике это B200 или B300 для BF16, H200 для FP8 с ощутимым числом одновременных запросов и GPU с 80 ГБ для 4-битного формата.

### Сколько видеопамяти нужно модели 8B?

Около 16 ГБ под веса в BF16, 8 ГБ в FP8 и 4–6 ГБ в 4-битном формате. Добавьте KV-кэш: для Llama 3.1 8B это около 0,13 МБ на токен в BF16, то есть примерно 1 ГБ на 8 000 токенов.

### Действительно ли длина контекста влияет на расход видеопамяти?

Да. KV-кэш растёт линейно с длиной контекста и с числом одновременных последовательностей. Одному запросу на 128K токенов к Llama 3.1 70B нужно около 43 ГБ кэша в BF16 — больше половины памяти H100.

### Можно ли объединить память нескольких GPU?

Да. Движки инференса и фреймворки для обучения умеют делить модель между несколькими GPU с помощью тензорного или конвейерного параллелизма (pipeline parallelism), и KV-кэш при этом тоже делится. Лучше всего это работает через NVLink, как в 8-GPU-серверах HGX; через PCIe это тоже работает, но обмен данными обходится дороже.

### Можно ли использовать всю заявленную память GPU?

Не совсем: контекст CUDA, библиотеки и буферы фреймворков занимают часть памяти на каждом GPU, а серверы инференса резервируют рабочее пространство под активации. На разделяемом или разбитом на разделы GPU вам может достаться лишь его часть, поэтому убедитесь, что арендуете целую карту.

## Связанные страницы

- [Калькулятор видеопамяти для LLM: поместится ли ваша модель на GPU?](https://fullgpu.com/ru/tools/vram-calculator): Бесплатный калькулятор видеопамяти для LLM: выберите Llama, Qwen, Mistral или gpt-oss, точность и длину контекста и посмотрите веса, KV-кэш и подходящие GPU.
- [Как дообучить модель 70B: требования к GPU и порядок работы](https://fullgpu.com/ru/blog/fine-tune-70b-model): Сколько GPU нужно для дообучения модели 70B: QLoRA — один GPU с 80 ГБ, LoRA в BF16 — около двух, полное — свыше 1 ТБ (класс 8× H200). Расчёт памяти и настройка.
- [Как самостоятельно развернуть инференс LLM с vLLM](https://fullgpu.com/ru/blog/self-host-llm-inference-vllm): Инференс LLM на своём сервере с vLLM: подбор GPU, OpenAI-совместимый сервер, настройка FP8, кэширования префиксов и параллелизма, защита для продакшена.
- [Лучший GPU для инференса LLM в 2026 году: подбор по размеру модели](https://fullgpu.com/ru/blog/best-gpu-for-llm-inference): Лучший GPU для инференса LLM зависит от размера модели, точности, KV-кэша и пропускной способности. Выбирайте по таблице 2026 года: от RTX 5090 до 8× B300.
