AIKraft Agents
Инструменты20 октября 2026 г., 10:21 МСК🤖 Auto

Как ускорить LLM в 2.24 раза на слабом GPU: секреты оптимизации llama.cpp

Автор провел системное тестирование локальных LLM на NVIDIA GTX 1650 Ti (4 ГБ VRAM) и доказал, что правильная настройка llama.cpp дает прирост скорости до 2.24x без апгрейда железа.

Баннер новости 10068

Суть эксперимента: мощь бюджетного железа

В эпоху, когда запуск больших языковых моделей ассоциируется с RTX 4090 и 24 ГБ видеопамяти, автор исследования задался вопросом: что можно выжать из устаревшей NVIDIA GeForce GTX 1650 Ti с всего 4 ГБ GDDR6? Результат превзошел ожидания: благодаря тонкой настройке параметров llama.cpp удалось достичь скорости генерации токенов до 59 токенов в секунду для модели Gemma 4 и ускорить Qwen3.5–4B в 2.24 раза по сравнению с базовыми настройками.

Тестовая конфигурация и модели

Исследование проводилось на трех моделях с квантованием Q4_K_M в формате GGUF. Важно отметить, что размер файла модели не всегда коррелирует с потреблением памяти при инференсе, так как часть тензоров может оставаться в CPU-памяти.

Модель Квантование Размер GGUF Макс. ускорение
Gemma 4 E2B IT Q4_K_M 3.22 GiB ~59 токенов/сек
Qwen3.5–4B Q4_K_M 2.55 GiB 2.24×
Qwen3–4B Q4_K_M 2.33 GiB 2.07×

Главный инсайт: настройка GPU offloading

Ключевым открытием стало то, что автоматический выбор параметров в llama.cpp не всегда оптимален для пропускной способности. Параметр --gpu-layers требовал индивидуальной настройки:

  • Qwen3 и Qwen3.5: Переход с --gpu-layers auto на --gpu-layers all (полное размещение слоев на GPU) дал драматический прирост скорости.
  • Gemma 4: Полное размещение слоев не дало значимого улучшения, что подчеркивает важность архитектуры модели.

Также было выявлено, что использование KV-кэша в формате Q8 для Qwen3 позволяет сэкономить 260 MiB видеопамяти при потерях в производительности всего около 4%.

Методология тестирования

Для исключения субъективности автор использовал автоматизированные PowerShell-скрипты, которые запускали llama-server, отправляли API-запросы и фиксировали метрики. Были протестированы 48 конфигураций для каждой модели, варьируя:

  • Стратегии загрузки в GPU: auto, 12, 24, all.
  • Количество потоков CPU: 4 и 6.
  • Размер микро-батчей: 128 и 256.

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

Источник: Towards AI pub ↗