NVIDIA vs Apple Silicon: скорость инференса LLM
Выбор аппаратной платформы для локального запуска больших языковых моделей (LLM) — это всегда поиск компромисса между стоимостью, энергоэффективностью и пропускной способностью памяти. В последние годы на рынке сформировалось два явных лидера: серверные видеокарты NVIDIA, доминирующие в индустрии, и чипы Apple Silicon (M1/M2/M3), предлагающие уникальную архитектуру унифицированной памяти.
Чтобы объективно сравнить эти решения, мы проанализировали результаты бенчмарков, проведенных с использованием llama.cpp. Тестирование охватывало модели LLaMA 3 различных размеров (8B и 70B) с разными квантованиями (Q4_K_M и F16). В качестве полигона использовались как облачные инстансы RunPod (NVIDIA), так и локальные устройства: 13-дюймовый MacBook Air (M1), 14-дюймовый MacBook Pro (M1 Max), Mac Studio (M2 Ultra) и 16-дюймовый MacBook Pro (M3 Max).
01Ключевые метрики: Throughput vs Prompt Eval
При оценке производительности LLM важно различать два режима работы:
- Throughput (tokens/s generation): скорость генерации токенов после того, как модель «прочитала» промпт. Это критично для UX в чат-ботах.
- Prompt Eval (tokens/s evaluation): скорость обработки входного контекста. Важна для работы с длинными документами.
Ниже представлены данные по средней скорости генерации 1024 токенов. Обратите внимание на разрыв между потребительскими решениями Apple и серверными решениями NVIDIA.
Скорость генерации (Throughput)
| GPU | 8B Q4_K_M | 8B F16 | 70B Q4_K_M | 70B F16 |
|---|---|---|---|---|
| 3070 8GB | 70.94 | OOM | OOM | OOM |
| 3080 10GB | 106.40 | OOM | OOM | OOM |
| 3080 Ti 12GB | 106.71 | OOM | OOM | OOM |
| 4070 Ti 12GB | 82.21 | OOM | OOM | OOM |
| 4080 16GB | 106.22 | 40.29 | OOM | OOM |
| RTX 4000 Ada 20GB | 58.59 | 20.85 | OOM | OOM |
| 3090 24GB | 111.74 | 46.51 | OOM | OOM |
| 4090 24GB | 127.74 | 54.34 | OOM | OOM |
| RTX 5000 Ada 32GB | 89.87 | 32.67 | OOM | OOM |
| 3090 24GB * 2 | 108.07 | 47.15 | 16.29 | OOM |
| 4090 24GB * 2 | 122.56 | 53.27 | 19.06 | OOM |
| RTX A6000 48GB | 102.22 | 40.25 | 14.58 | OOM |
| RTX 6000 Ada 48GB | 130.99 | 51.97 | 18.36 | OOM |
| A40 48GB | 88.95 | 33.95 | 12.08 | OOM |
| L40S 48GB | 113.60 | 43.42 | 15.31 | OOM |
| RTX 4000 Ada 20GB * 4 | 56.14 | 20.58 | 7.33 | OOM |
| A100 PCIe 80GB | 138.31 | 54.56 | 22.11 | OOM |
| A100 SXM 80GB | 133.38 | 53.18 | 24.33 | OOM |
| H100 PCIe 80GB | 144.49 | 67.79 | 25.01 | OOM |
| 3090 24GB * 4 | 104.94 | 46.40 | 16.89 | OOM |
| 4090 24GB * 4 | 117.61 | 52.69 | 18.83 | OOM |
| RTX 5000 Ada 32GB * 4 | 82.73 | 31.94 | 11.45 | OOM |
| 3090 24GB * 6 | 101.07 | 45.55 | 16.93 | 5.82 |
| 4090 24GB * 8 | 116.13 | 52.12 | 18.76 | 6.45 |
| RTX A6000 48GB * 4 | 93.73 | 38.87 | 14.32 | 4.74 |
| RTX 6000 Ada 48GB * 4 | 118.99 | 50.25 | 17.96 | 6.06 |
| A40 48GB * 4 | 83.79 | 33.28 | 11.91 | 3.98 |
| L40S 48GB * 4 | 105.72 | 42.48 | 14.99 | 5.03 |
| A100 PCIe 80GB * 4 | 117.30 | 51.54 | 22.68 | 7.38 |
| A100 SXM 80GB * 4 | 97.70 | 45.45 | 19.60 | 6.92 |
| H100 PCIe 80GB * 4 | 118.14 | 62.90 | 26.20 | 9.63 |
| M1 7‑Core GPU 8GB | 9.72 | OOM | OOM | OOM |
| M1 Max 32‑Core GPU 64GB | 34.49 | 18.43 | 4.09 | OOM |
| M2 Ultra 76-Core GPU 192GB | 76.28 | 36.25 | 12.13 | 4.71 |
| M3 Max 40‑Core GPU 64GB | 50.74 | 22.39 | 7.53 | OOM |
02Анализ производительности
Результаты демонстрируют четкое разделение сфер применения. NVIDIA H100 и A100 остаются безоговорочными лидерами в задачах, требующих высокой пропускной способности памяти (HBM). Для модели 8B в формате F16 H100 выдает 67.79 токенов в секунду, что более чем в 3 раза быстрее лучшего результата Apple (M2 Ultra — 36.25 t/s).
Однако Apple Silicon демонстрирует удивительную эффективность в квантованных форматах (Q4_K_M). M2 Ultra с 192 ГБ унифицированной памяти генерирует 76.28 токенов/с для 8B модели. Это сопоставимо с производительностью одной видеокарты RTX 4090 (127.74 t/s) с учетом того, что M2 Ultra потребляет значительно меньше энергии и не требует сложного охлаждения, как серверная стойка.
Для моделей среднего размера (70B) преимущество NVIDIA становится еще очевиднее. M2 Ultra справляется с 70B Q
Источник: источник (тест/офиц. документация) ↗