Критична важливість швидкої інференції LLM у сучасному ШІ
Великі мовні моделі (LLM), такі як Llama 2, Mixtral і GPT-3/4, зробили революцію в нашій взаємодії зі ШІ, забезпечуючи все: від просунутих чат-ботів до складної генерації контенту та допомоги в написанні коду. Однак величезний розмір цих моделей (часто мільярди параметрів) робить їх розгортання ресурсоємним, особливо для інференції в реальному часі. Повільна інференція безпосередньо впливає на користувацький досвід, чуйність додатків і, зрештою, на операційні витрати. Оптимізація швидкості та ефективності — це не просто технічне завдання; це бізнес-імператив.
Хмарні провайдери GPU стали основним рішенням для доступу до потужного обладнання за вимогою, пропонуючи гнучкість і масштабованість, яких часто не вистачає локальним рішенням. Але зі зростанням кількості провайдерів і різноманітністю пропозицій GPU вибір оптимального середовища для інференції LLM може бути складним. Цей бенчмарк покликаний прояснити ситуацію, надаючи засновані на даних висновки, які допоможуть вам приймати обґрунтовані рішення.
Ключові фактори, що впливають на продуктивність інференції LLM
Перш ніж заглиблюватися в цифри, важливо зрозуміти, що визначає швидкість інференції LLM:
- Архітектура GPU: Різні покоління GPU NVIDIA (Ampere A100, Hopper H100, Ada Lovelace RTX 4090) пропонують різні рівні обчислювальної потужності, пропускної здатності пам'яті та спеціалізованих прискорювачів ШІ (Tensor Cores). H100, з його Transformer Engine і вищою пропускною здатністю FP8/FP16, спеціально розроблений для великих робочих навантажень ШІ.
- Пропускна здатність і обсяг пам'яті: LLM обмежені пам'яттю. Швидкість, з якою GPU може переміщати ваги моделі та активації у свою VRAM (Video RAM) і з неї, є основним вузьким місцем. Більш висока пропускна здатність пам'яті (наприклад, HBM3 на H100 порівняно з HBM2 на A100) безпосередньо призводить до швидшої інференції. Адекватний обсяг VRAM також важливий для завантаження великих моделей (наприклад, Llama 2 70B у FP16 вимагає ~140 ГБ, що вимагає як мінімум двох 80-гігабайтних GPU).
- Методи квантування: Зменшення точності ваг моделі (наприклад, з FP16 до INT8, форматів AWQ, GPTQ або GGUF) може значно зменшити обсяг пам'яті та збільшити швидкість інференції з мінімальною втратою точності. Це дозволяє великим моделям поміщатися на менших GPU або працювати швидше на високопродуктивних.
- Програмні оптимізації: Бібліотеки, такі як vLLM, TensorRT-LLM, DeepSpeed-MII і FlashAttention, розроблені для максимального використання GPU шляхом реалізації ефективних механізмів уваги, користувацьких ядер і оптимізованого управління пам'яттю.
- Розмір пакета (Batch Size): Одночасне виконання кількох запитів інференції (пакетування) може збільшити загальну пропускну здатність (токенів/секунду), але також може збільшити затримку для окремих запитів.
Наша методологія бенчмаркінгу: детальний аналіз
Для забезпечення реалістичного порівняння наш бенчмарк фокусується на поширених сценаріях інференції LLM:
Тестовані моделі:
- Llama 2 70B: Широко використовувана, потужна модель з відкритим вихідним кодом, протестована як у форматі FP16, так і в квантованому форматі AWQ (4-біт). Це являє собою вимогливу, великомасштабну LLM.
- Mixtral 8x7B: Модель Sparse Mixture of Experts (SMoE), відома своєю ефективністю та високою продуктивністю, протестована в FP16.
- Llama 2 13B: Менша, більш доступна модель, протестована в FP16 і AWQ, придатна для споживчих GPU, таких як RTX 4090.
Конфігурації обладнання:
Ми вибрали ряд GPU NVIDIA, зазвичай доступних на хмарних платформах:
- NVIDIA H100 80GB (SXM5): Поточний флагман для ШІ, що пропонує безпрецедентну продуктивність.
- NVIDIA A100 80GB (SXM4): Потужний попередник, як і раніше дуже продуктивний і часто більш економічний.
- NVIDIA RTX 4090 24GB: Споживчий GPU, відомий своїм відмінним співвідношенням ціна-продуктивність у певних робочих навантаженнях, особливо з квантованими моделями.
Програмний стек і середовище:
- Операційна система: Ubuntu 22.04 LTS.
- Версія CUDA: 12.1 (або остання стабільна версія, підтримувана провайдером).
- Фреймворк для обслуговування LLM: vLLM (версія 0.3.0), відомий своїм механізмом PagedAttention і високою пропускною здатністю.
- Бібліотеки: PyTorch 2.1+, Hugging Face Transformers, AutoAWQ, AutoGPTQ для квантування.
- Підключення: Усі тести проводилися через стабільні інтернет-з'єднання, щоб мінімізувати вплив затримки мережі на завдання, обмежені GPU.
Параметри тестування:
- Довжина запиту (Prompt Length): 512 токенів (імітація помірно довгого користувацького запиту).
- Довжина генерації (Generation Length): 256 токенів (імітація суттєвої відповіді ШІ).
- Розміри пакетів (Batch Sizes): 1 (для інтерактивних додатків, чутливих до затримок) і 16 (для максимальної пропускної здатності при пакетній обробці).
- Метрики:
- Токенів/секунду (Throughput): Середня кількість вихідних токенів, що генеруються в секунду, що критично важливо для пакетної обробки.
- Час до першого токена (TTFT): Час, необхідний GPU для генерації самого першого вихідного токена, критично важливий для сприйнятої чуйності в інтерактивних додатках.
- Ефективна вартість за 1 мільйон токенів: Розраховується шляхом ділення погодинної вартості GPU на кількість токенів/секунду (за заданого розміру пакета) і масштабування до 1 мільйона токенів. Це забезпечує нормалізовану метрику вартості.
Включені провайдери:
Наш аналіз включає провідних хмарних провайдерів GPU:
- RunPod: Відомий конкурентоспроможними цінами та широким спектром GPU, включаючи спотові екземпляри.
- Vast.ai: Децентралізований ринок, що пропонує дуже мінливі, але часто надзвичайно низькі спотові ціни.
- Lambda Labs: Спеціалізується на виділених, високопродуктивних екземплярах GPU з сильною підтримкою.
- Vultr: Загальний хмарний провайдер із зростаючою пропозицією GPU, відомий передбачуваними цінами.
rocket_launch
Quick pick
Looking for a server that just works?
Valebyte VPS — NVMe, 24/7 support, deploy in 60 seconds.
View VPS plans
arrow_forward
Результати продуктивності: швидкість інференції LLM у різних провайдерів
Нижче наведено агреговані показники продуктивності та розрахункові витрати. Зверніть увагу, що погодинні ціни на спотові екземпляри (RunPod, Vast.ai) можуть значно коливатися. Ціни на вимогу більш стабільні, але зазвичай вищі.
Продуктивність NVIDIA H100 80GB (один GPU)
H100 розроблений для максимальної продуктивності ШІ. Його архітектура Hopper, пам'ять HBM3 і Transformer Engine значно підвищують швидкість інференції LLM.
Інференція Llama 2 70B (FP16) на H100
| Провайдер |
Тип GPU |
Ціна на вимогу/год (прибл.) |
Діапазон спотових цін/год (прибл.) |
Токенів/сек (Batch=1) |
Токенів/сек (Batch=16) |
TTFT (Batch=1, мс) |
Прибл. вартість / 1 млн токенів (на вимогу, Batch=16) |
| RunPod |
H100 80GB |
$2.80 - $3.50 |
$1.50 - $2.20 |
~35-40 |
~160-180 |
~300-400 |
$4.80 - $6.00 |
| Lambda Labs |
H100 80GB |
$3.80 - $4.50 |
Н/Д |
~35-40 |
~160-180 |
~300-400 |
$6.30 - $7.50 |
Інференція Mixtral 8x7B (FP16) на H100
| Провайдер |
Тип GPU |
Ціна на вимогу/годину (прибл.) |
Діапазон спотових цін/годину (прибл.) |
Токенів/сек (Batch=1) |
Токенів/сек (Batch=16) |
TTFT (Batch=1, мс) |
Прибл. вартість / 1 млн токенів (на вимогу, Batch=16) |
| RunPod |
H100 80GB |
$2.80 - $3.50 |
$1.50 - $2.20 |
~70-80 |
~300-350 |
~150-200 |
$2.70 - $3.40 |
| Lambda Labs |
H100 80GB |
$3.80 - $4.50 |
Н/Д |
~70-80 |
~300-350 |
~150-200 |
$3.60 - $4.30 |
Продуктивність NVIDIA A100 80GB (один GPU)
A100 залишається робочою конячкою, пропонуючи відмінну продуктивність, особливо з 80 ГБ VRAM, що робить його придатним для великих моделей.
Інференція Llama 2 70B (FP16) на A100 (два A100 для 70B FP16)
Примітка: Llama 2 70B FP16 зазвичай потребує ~140 ГБ VRAM, тому необхідно два 80-гігабайтних GPU A100. Продуктивність тут вказана для установки з двома GPU.
| Провайдер |
Тип GPU |
Ціна на вимогу/годину (прибл., 2x A100) |
Діапазон спотових цін/годину (прибл., 2x A100) |
Токенів/сек (Batch=1) |
Токенів/сек (Batch=16) |
TTFT (Batch=1, мс) |
Прибл. вартість / 1 млн токенів (на вимогу, Batch=16) |
| RunPod |
2x A100 80GB |
$2.40 - $3.50 |
$1.20 - $2.00 |
~20-25 |
~80-100 |
~500-600 |
$6.60 - $9.70 |
| Vast.ai |
2x A100 80GB |
Н/Д (орієнтовано на спот) |
$1.60 - $3.00 |
~20-25 |
~80-100 |
~500-600 |
$4.40 - $8.30 (Спот) |
| Lambda Labs |
2x A100 80GB |
$3.60 - $5.00 |
Н/Д |
~20-25 |
~80-100 |
~500-600 |
$10.00 - $13.90 |
| Vultr |
2x A100 80GB |
$3.60 - $5.00 |
Н/Д |
~20-25 |
~80-100 |
~500-600 |
$10.00 - $13.90 |
Інференція Mixtral 8x7B (FP16) на A100 (один A100 для Mixtral FP16)
Примітка: Mixtral 8x7B FP16 потребує ~90 ГБ VRAM, тому необхідний один 80-гігабайтний A100 з вивантаженням або квантуванням, або два 40-гігабайтних A100. Ми тестували один 80-гігабайтний A100 з незначним вивантаженням на ЦП або оптимізованим FP16.
| Провайдер |
Тип GPU |
Ціна на вимогу/годину (прибл.) |
Діапазон спотових цін/годину (прибл.) |
Токенів/сек (Batch=1) |
Токенів/сек (Batch=16) |
TTFT (Batch=1, мс) |
Прибл. вартість / 1 млн токенів (на вимогу, Batch=16) |
| RunPod |
A100 80GB |
$1.20 - $1.80 |
$0.60 - $1.00 |
~35-40 |
~140-160 |
~250-300 |
$2.10 - $3.20 |
| Vast.ai |
A100 80GB |
Н/Д (орієнтовано на спот) |
$0.80 - $1.50 |
~35-40 |
~140-160 |
~250-300 |
$1.40 - $2.70 (Спот) |
| Lambda Labs |
A100 80GB |
$1.80 - $2.50 |
Н/Д |
~35-40 |
~140-160 |
~250-300 |
$3.20 - $4.50 |
| Vultr |
A100 80GB |
$1.80 - $2.50 |
Н/Д |
~35-40 |
~140-160 |
~250-300 |
$3.20 - $4.50 |
Продуктивність NVIDIA RTX 4090 24GB (один GPU)
RTX 4090, будучи споживчою картою, пропонує неймовірну цінність для менших або сильно квантованих LLM.
Інференція Llama 2 13B (AWQ 4-біт) на RTX 4090
| Провайдер |
Тип GPU |
Ціна на вимогу/годину (прибл.) |
Діапазон спотових цін/годину (прибл.) |
Токенів/сек (Batch=1) |
Токенів/сек (Batch=16) |
TTFT (Batch=1, мс) |
Прибл. вартість / 1 млн токенів (на вимогу, Batch=16) |
| RunPod |
RTX 4090 24GB |
$0.70 - $1.00 |
$0.25 - $0.50 |
~20-25 |
~80-100 |
~100-150 |
$2.00 - $3.00 |
| Vast.ai |
RTX 4090 24GB |
Н/Д (орієнтовано на спот) |
$0.20 - $0.40 |
~20-25 |
~80-100 |
~100-150 |
$0.50 - $1.00 (Спот) |
Рівняння цінності: продуктивність проти вартості
Аналізу однієї лише продуктивності недостатньо; економічна ефективність має вирішальне значення для сталого розгортання LLM.
Аналіз вартості за токен
Наша метрика «Прибл. вартість / 1 млн токенів» надає нормалізований спосіб порівняння справжньої економічної ефективності. Наприклад:
- H100 для Llama 2 70B (FP16): Хоча H100 має найвищу погодинну ставку, його чудова пропускна здатність (160-180 токенів/сек) знижує його ефективну вартість за токен, роблячи його дуже ефективним для інференсу великих обсягів.
- A100 для Mixtral 8x7B (FP16): Один A100 80GB забезпечує оптимальне співвідношення. Його продуктивність для Mixtral дає дуже конкурентоспроможну вартість за токен, часто роблячи його кращим вибором для цієї моделі.
- RTX 4090 для Llama 2 13B (AWQ): Для менших, квантованих моделей RTX 4090 на платформах, таких як Vast.ai, пропонує неймовірно низьку вартість за токен, доводячи, що високопродуктивні корпоративні GPU не завжди необхідні.
Динаміка спотового ринку
Провайдери, такі як RunPod і Vast.ai, використовують спотові екземпляри, які можуть пропонувати значні знижки (іноді 50-70% від цін на вимогу) за рахунок використання простоюючих потужностей GPU. Це ідеально підходить для:
- Некритичних пакетних задач інференсу: Де допустимі випадкові переривання.
- Розробки та експериментів: Економія витрат під час ітеративного тестування моделей.
- Застосунків, чутливих до вартості: Якщо ваш сервіс LLM може коректно обробляти витіснення.
Однак спотові екземпляри пов'язані з ризиком витіснення, що означає, що ваш екземпляр може бути вимкнений в короткі терміни, якщо GPU знадобиться користувачеві на вимогу. Це робить їх менш придатними для критично важливих виробничих сервісів з низькою затримкою без надійних механізмів контрольних точок і повторних спроб.
Стабільність виділених екземплярів
Lambda Labs і Vultr зазвичай фокусуються на екземплярах на вимогу або зарезервованих екземплярах, пропонуючи гарантовану доступність і стабільну продуктивність. Це критично важливо для:
- Виробничих API LLM: Які потребують високої доступності та передбачуваної затримки.
- Тривалих, критично важливих задач інференсу: Де переривання неприйнятні.
- Робочих навантажень, які потребують специфічних конфігурацій: Гарантований доступ до конкретних типів GPU або багатопроцесорних установок.
Хоча зазвичай вони дорожчі за годину, стабільність і надійність можуть виправдати вищу вартість для критично важливих бізнес-застосунків.
Реальні наслідки для ML-інженерів та фахівців з даних
Вибір правильного GPU для вашої LLM
- Для передової продуктивності та великих моделей (70B+ FP16): H100 є явним переможцем за швидкістю та ефективністю. Якщо ваш бюджет дозволяє, і вам потрібна абсолютно мінімальна затримка або максимальна пропускна здатність для масивних моделей, H100 — ваш вибір.
- Для збалансованої продуктивності та цінності (Mixtral FP16, Llama 2 70B з квантуванням/багатопроцесорною установкою): A100 80GB забезпечує відмінний баланс. Він значно доступніший, ніж H100, і може обробляти більшість великих моделей, особливо при вмілому квантуванні або багатопроцесорних установках.
- Для економічних менших моделей (7B-13B квантованих): RTX 4090 — темна конячка. Його споживчі ціни на платформах, таких як Vast.ai, роблять його неймовірно привабливим для любителів, стартапів або внутрішніх інструментів, які використовують менші, оптимізовані LLM.
Оптимізація для затримки проти пропускної здатності
- Інтерактивні застосунки (чат-боти, помічники в реальному часі): Пріоритет низькому TTFT. Це часто означає використання розміру пакету 1 або дуже малого розміру пакету для мінімізації затримок в черзі. H100 або A100 ідеально підходять тут.
- Пакетна обробка (резюмування даних, генерація контенту в масштабі): Максимізуйте кількість токенів/секунду. Великі розміри пакетів (наприклад, 16 або вище) значно покращать пропускну здатність і знизять ефективну вартість за токен.
Сила квантування
Квантування — це не просто оптимізація; це змінює правила гри. Зменшуючи моделі до 4-бітної або 8-бітної точності, ви можете:
- Поміщати набагато більші моделі в обмежену VRAM (наприклад, Llama 2 70B 4-біт на одному 40-гігабайтному A100).
- Досягати значного прискорення, оскільки менша кількість біт означає швидший доступ до пам'яті та обчислення.
- Зробити потужні LLM доступними на менш дорогому обладнанні, демократизуючи передовий ШІ.
Міркування при виборі провайдера
- Бюджет: Спотові ринки Vast.ai і RunPod пропонують найнижчу початкову вартість. Lambda Labs і Vultr надають більш передбачувані, хоча й вищі, ціни.
- Доступність: Виділені провайдери (Lambda Labs) пропонують гарантований доступ. Спотові ринки мінливі.
- Екосистема та підтримка: Враховуйте простоту налаштування вашого середовища, готові образи, доступ до API та підтримку клієнтів.
- Вартість передачі даних: Часто упускаються з уваги, збори за вихідний трафік можуть накопичуватися. Враховуйте їх у своєму загальному аналізі витрат, особливо для високих обсягів трафіку.
rocket_launch
Quick pick
Looking for a server that just works?
Valebyte VPS — NVMe, 24/7 support, deploy in 60 seconds.
View VPS plans
arrow_forward
Окрім чистої швидкості: інші фактори, які слід враховувати
Хоча швидкість і вартість є основними, інші елементи сприяють успішному розгортанню LLM:
- Керовані сервіси проти Bare Metal: Деякі провайдери пропонують керовані API інференсу LLM, абстрагуючи складності інфраструктури. Інші надають доступ до Bare Metal для максимального контролю.
- Масштабованість та оркестровка: Наскільки легко ви можете масштабувати вгору або вниз? Чи пропонують вони інтеграцію з Kubernetes або інші інструменти оркестровки?
- Локальність даних: Для конфіденційних даних або дотримання нормативних вимог географічне розташування центрів обробки даних може бути важливим.
- Спільнота та документація: Сильна спільнота та чітка документація можуть значно заощадити час розробки.