ДомЛаб

Методика

Откуда берутся цифры в наших калькуляторах и материалах — и насколько им можно доверять.

Мы публикуем расчёты, а не оценки на глаз. Чтобы результат можно было проверить, ниже описано, по какой формуле мы считаем и на каких данных.

Расчёт видеопамяти

Потребление складывается из трёх частей:

  • Веса модели — количество параметров, умноженное на число байт на параметр для выбранной квантизации. Для Q4_K_M это примерно 0,61 байта, для Q8_0 — 1,06, для FP16 — 2.
  • KV-кэш — память под контекст. Считается точно, по конфигурации конкретной модели: 2 × слои × KV-головы × размер головы × токены × байт на элемент. Множитель 2 — это отдельно ключи и отдельно значения.
  • Накладные расходы — контекст CUDA, буферы и активации. Здесь мы берём примерно 0,7 ГБ плюс поправку, растущую с длиной контекста и числом параллельных запросов.

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

Источники данных

В базе 20 моделей и 18 видеокарт. Для моделей мы берём число параметров, количество слоёв, число KV-голов, размер головы и штатный контекст из конфигураций самих моделей. Для видеокарт — объём памяти и пропускную способность из спецификаций производителя.

Оценка скорости

Скорость генерации в токенах в секунду — самая грубая величина из всех, что мы показываем. Она выводится из пропускной способности памяти, поделённой на объём весов: инференс одиночного запроса упирается именно в память, а не в вычислительную мощность.

Это даёт правильный порядок величины и правильное соотношение между картами, но не точное число. Реальная скорость зависит от бэкенда, версии драйверов, длины промпта и того, что ещё занимает видеопамять. Считайте это ориентиром «быстро или медленно», а не обещанием.

Чего расчёт не учитывает

  • занятую видеопамять — рабочий стол и браузер съедают от 0,5 до 1,5 ГБ;
  • особенности конкретных бэкендов: llama.cpp, Ollama и vLLM расходуют память по-разному;
  • выгрузку части слоёв в оперативную память — она позволяет запустить больше, но медленнее;
  • flash attention и другие оптимизации, снижающие расход на длинном контексте.

Поэтому вердикт «впритык» в калькуляторе стоит читать как «скорее всего запустится, но проверьте на своей машине», а не как гарантию.

Обновление данных

Модели и видеокарты добавляются в базу по мере выхода. При изменении методики расчёта мы пересчитываем все опубликованные материалы, а не только новые, — иначе старые статьи начинают противоречить калькулятору.

Нашли ошибку

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