Выбор платформы для локального запуска больших языковых моделей (LLM) часто сводится к дилемме: мощные, но дорогие GPU NVIDIA или энергоэффективные Apple Silicon. В этом обзоре мы опираемся на реальные бенчмарки из репозитория GPU-Benchmarks-on-LLM-Inference, где тестировалась модель LLaMA 3 (8B и 70B) через llama.cpp. Мы разберем, что быстрее, где упирается память и как собрать оптимальную конфигурацию.
01Скорость генерации (Tokens/Second)
Главный метрик для пользователя — скорость генерации текста. Ниже приведены данные для режима генерации 1024 токенов. Обратите внимание: для моделей 70B в точности F16 большинство карт выдают OOM (Out Of Memory), поэтому рассматриваем квантованные Q4_K_M или мульти-GPU конфигурации.
| Железо | VRAM | LLaMA 3 8B (Q4_K_M) | LLaMA 3 70B (Q4_K_M) |
|---|---|---|---|
| RTX 4090 (1x) | 24 GB | 127.74 | OOM |
| RTX 4090 (2x) | 48 GB | 122.56 | 19.06 |
| RTX 4090 (4x) | 96 GB | 117.61 | 18.83 |
| RTX 4090 (8x) | 192 GB | 116.13 | 18.76 |
| H100 PCIe (1x) | 80 GB | 144.49 | 25.01 |
| H100 PCIe (4x) | 320 GB | 118.14 | 26.20 |
| M2 Ultra | 192 GB | 76.28 | 12.13 |
| M3 Max (64GB) | 64 GB | 50.74 | 7.53 |
Как видно, одиночная RTX 4090 выигрывает у M2 Ultra в скорости генерации 8B-моделей (127 vs 76 токенов/с). Однако для 70B-моделей M2 Ultra справляется благодаря огромному объему единой памяти, тогда как одна 4090 не может загрузить модель в Q4. Для 70B на NVIDIA требуется минимум 2-4 карты, что снижает эффективность на одну карту из-за накладных расходов на коммуникацию.
02Скорость оценки промпта (Prompt Eval)
Вторая важная метрика — скорость обработки входного контекста (prompt evaluation). Здесь Apple Silicon показывает себя неожиданно сильно, а NVIDIA демонстрирует колоссальный разрыв в пиковых значениях при масштабировании.
| Железо | LLaMA 3 8B (Q4_K_M) | LLaMA 3 70B (Q4_K_M) |
|---|---|---|
| RTX 4090 (1x) | 6898.71 | OOM |
| RTX 4090 (4x) | 9609.29 | 898.17 |
| H100 PCIe (4x) | 11560.23 | 1133.23 |
| M2 Ultra | 1023.89 | 117.76 |
Конфигурация из 4x RTX 4090 обрабатывает промпт для 8B модели почти в 10 раз быстрее, чем M2 Ultra. Для 70B моделей 4x H100 обеспечивают скорость 1133 токенов/с, что недостижимо для потребительских решений Apple без потери производительности.
03Сборка и запуск
Для получения этих результатов необходимо правильно собрать llama.cpp. Флаги сборки критичны для производительности.
Для NVIDIA GPU используется CUDA:
!make clean && LLAMA_CUBLAS=1 make -jДля Apple Silicon Metal включен по умолчанию:
!make clean && make -jЗапуск с полной загрузкой слоев на GPU (offload):
!./main -ngl 10000 -m ./models/8B-v3/ggml-model-Q4_K_M.gguf --color --temp 1.1 --repeat_penalty 1.1 -c 0 -n 1024 -e -s 0 -p """\recommendedMaxWorkingSetSize в логах. Для использования всей памяти можно попробовать -ngl 0 (CPU inference), но это резко снизит скорость.04VRAM и совместимость моделей
Объем видеопамяти — главный ограничитель. Модель LLaMA 3 8B в квантовании Q4_K_M занимает около 5-6 ГБ, что позволяет запускать её на картах с 8 ГБ (RTX 3070, 4070 Ti), albeit с низкой скоростью (70-82 ток/с). Модель 70B в Q4 требует около 40-48 ГБ VRAM. Это значит, что одна RTX 4090 (24 ГБ) или M3 Max (64 ГБ, но с учетом системных нужд и ограничений Metal) не справится с 70B в полном объеме без оверфлоу или вытеснения в CPU.
Для 70B Q4_K_M оптимальны:
- Одна RTX A6000 / RTX 6000 Ada (48 ГБ): 14.58 - 18.36 ток/с.
- Две RTX 4090 (48 ГБ суммарно): 19.06 ток/с.
- M2 Ultra (192 ГБ): 12.13 ток/с (медленнее, но работает стабильно).
05Какое железо кому подойдёт
Выбор зависит от бюджета и задач. В РФ сейчас актуальны следующие сценарии:
1. Бюджетный энтузиаст (до 100-150 тыс. руб.)
Железо: 1x RTX 4090 (24 ГБ) или 2x RTX 3090 (24 ГБ б/у).
Что запустит: LLaMA 3 8B (очень быстро), LLaMA 3 70B (медленно, требует 2 карт или использования A6000/A100 в облаке). Для 8B моделей RTX 4090 — король производительности.
2. Профессиональный разработчик / Small Business (300-500 тыс. руб.)
Железо: 2x RTX 4090 или 1x RTX 6000 Ada (48 ГБ).
Что запустит: LLaMA 3 70B в Q4 с приемлемой скоростью (19-18 ток/с). 2x 4090 часто выгоднее по цене/производительности, чем одна профессиональная карта, но требуют хорошего блока питания и корпуса.
3. Enterprise / High-End (1 млн+ руб. или аренда)
Железо: 4x H100 или 4x A100 (аренда через RunPod/Vast.ai) или 4x RTX 4090.
Что запустит: LLaMA 3 70B в F16 (если позволяет VRAM, но в тестах F16 для 70B часто OOM на 4x4090, так как нужно ~140 ГБ+). H100 обеспечивает максимальную скорость генерации (26 ток/с для 70B Q4) и оценки промпта. В РФ прямая покупка H100 затруднена, поэтому аренда облачных GPU остается основным путем к топовой производительности.
4. Apple Silicon (Mac Studio / MacBook Pro)
Железо: M2 Ultra (192 ГБ).
Кому: Тем, кому нужна тишина, компактность и возможность запускать огромные модели (70B+) без настройки мульти-GPU. Скорость ниже, чем у NVIDIA, но для инференса (не обучения) разница часто не критична, а единая память упрощает разработку.
Источник: источник (тест/офиц. документация) ↗
