Amazon SageMaker багатомодельні кінцеві точки (MME) забезпечують масштабований і економічно ефективний спосіб розгортання великої кількості моделей машинного навчання (ML). Це дає вам можливість розгортати кілька моделей ML в одному контейнері обслуговування за однією кінцевою точкою. Звідти SageMaker керує завантаженням і вивантаженням моделей і масштабуванням ресурсів від вашого імені на основі ваших моделей трафіку. Ви отримаєте вигоду від спільного використання та повторного використання ресурсів хостингу та зменшення операційного навантаження на керування великою кількістю моделей.
У листопаді 2022, MMEs додали підтримку GPUs, що дозволяє запускати кілька моделей на одному пристрої GPU та масштабувати екземпляри GPU за однією кінцевою точкою. Це задовольняє високий попит MME на моделі глибоких нейронних мереж (DNN), які виграють від прискореного обчислення за допомогою GPU. До них відносяться комп’ютерне бачення (CV), обробка природної мови (NLP) і генеративні моделі ШІ. Причини попиту включають наступне:
- Моделі DNN, як правило, мають великий розмір і складність і продовжують розвиватися швидкими темпами. Взявши як приклад моделі NLP, багато з них перевищують мільярди параметрів, що вимагає від графічних процесорів задовольняти низьку затримку та високу пропускну здатність.
- Ми помітили підвищену потребу в налаштуванні цих моделей, щоб забезпечити гіперперсоналізований досвід для окремих користувачів. Оскільки кількість цих моделей зростає, виникає потреба в більш простому рішенні для розгортання та експлуатації багатьох моделей у масштабі.
- Екземпляри графічного процесора дорогі, і ви хочете повторно використовувати ці екземпляри, наскільки це можливо, щоб максимізувати використання графічного процесора та зменшити експлуатаційні витрати.
Незважаючи на те, що всі ці причини вказують на те, що MME з графічним процесором є ідеальним варіантом для моделей DNN, рекомендується виконати навантажувальне тестування, щоб знайти правильну конфігурацію кінцевої точки, яка задовольняє ваші вимоги щодо використання. Багато факторів можуть впливати на результати навантажувального тестування, наприклад тип екземпляра, кількість екземплярів, розмір моделі та архітектура моделі. Крім того, навантажувальне тестування може допомогти розробити стратегії автоматичного масштабування, використовуючи правильні показники, а не ітераційні методи проб і помилок.
З цих причин ми підготували цю публікацію, щоб допомогти вам виконати належне навантажувальне тестування на MME з графічним процесором і знайти найкращу конфігурацію для вашого випадку використання ML. Ми ділимося нашими результатами тестування навантаження для деяких із найпопулярніших моделей DNN у NLP і CV, розміщених за допомогою MME на різних типах екземплярів. Ми узагальнюємо інформацію та висновки з результатів наших тестів, щоб допомогти вам прийняти обґрунтоване рішення щодо налаштування власних розгортань. Попутно ми також ділимося нашим рекомендованим підходом до виконання навантажувального тестування для MME на GPU. Рекомендовані інструменти та техніка визначають оптимальну кількість моделей, які можна завантажити для кожного типу екземпляра, і допомагають досягти найкращої ціни та ефективності.
Огляд рішення
Вступ до MME та MME з GPU див Створіть мультимодельну кінцеву точку та Запускайте кілька моделей глибокого навчання на GPU за допомогою мультимодельних кінцевих точок Amazon SageMaker. Для контексту навантажувального тестування в цій публікації ви можете завантажити наш приклад коду з GitHub репо щоб відтворити результати або використовувати його як шаблон для порівняння власних моделей. У сховищі є два блокноти: один для навантажувального тестування CV моделей, а інший для NLP. Кілька моделей різного розміру та архітектури були протестовані на різних типах графічних процесорів: ml.g4dn.2xlarge, ml.g5.2xlarge та ml.p3.2xlarge. Це має забезпечити розумний перетин продуктивності за такими показниками для кожного екземпляра та типу моделі:
- Максимальна кількість моделей, які можна завантажити в пам'ять GPU
- Наскрізна затримка відповіді, що спостерігається на стороні клієнта для кожного запиту на висновок
- Максимальна пропускна здатність запитів на секунду, яку кінцева точка може обробити без помилок
- Максимальна кількість поточних користувачів на один екземпляр до виявлення невдалого запиту
У наступній таблиці наведено перевірені моделі.
Використовуйте Case | Назва моделі | Розмір на диску | Кількість параметрів |
CV | resnet50 |
100Mb | 25M |
CV | convnext_base |
352Mb | 88M |
CV | vit_large_patch16_224 |
1.2Gb | 304M |
НЛП | bert-base-uncased |
436Mb | 109M |
НЛП | roberta-large |
1.3Gb | 335M |
У наведеній нижче таблиці наведено перевірені екземпляри GPU.
Тип екземпляра | Тип GPU | Кількість графічних процесорів | Пам'ять GPU (ГіБ) |
ml.g4dn.2xlarge | Графічні процесори NVIDIA T4 | 1 | 16 |
мл.g5.2xвеликий | Графічний процесор NVIDIA A10G Tensor Core | 1 | 24 |
ml.p3.2xlarge | Графічний процесор NVIDIA® V100 Tensor Core | 1 | 16 |
Як уже зазначалося, приклад коду можна адаптувати до інших моделей і типів примірників.
Зауважте, що MME наразі підтримують лише один екземпляр GPU. Список підтримуваних типів екземплярів див Підтримувані алгоритми, фреймворки та екземпляри.
Процедура бенчмаркінгу складається з наступних кроків:
- Отримайте попередньо навчену модель із концентратора моделей.
- Підготуйте артефакт моделі для обслуговування на SageMaker MME (див Запускайте кілька моделей глибокого навчання на GPU за допомогою мультимодельних кінцевих точок Amazon SageMaker детальніше).
- Розгорніть SageMaker MME на примірнику GPU.
- Визначте максимальну кількість моделей, які можна завантажити в пам’ять графічного процесора в межах заданого порогового значення.
- Використовуйте Locust Load Testing Framework для імітації трафіку, який випадковим чином викликає моделі, завантажені в екземпляр.
- Збирайте дані та аналізуйте результати.
- За бажанням повторіть кроки 2–6 після компіляції моделі в TensorRT.
Кроки 4 і 5 вимагають глибшого розгляду. Моделі в SageMaker GPU MME завантажуються в пам’ять динамічно. Тому на кроці 4 ми завантажуємо початковий артефакт моделі Служба простого зберігання Amazon (Amazon S3) і викличте модель, щоб завантажити її в пам’ять. Після початкового виклику ми вимірюємо обсяг споживаної пам’яті GPU, робимо копію початкової моделі, викликаємо копію моделі, щоб завантажити її в пам’ять, і знову вимірюємо загальний обсяг споживаної пам’яті GPU. Цей процес повторюється, доки не буде досягнуто певного відсоткового порогу використання пам’яті GPU. Для порівняльного тесту ми встановили поріг на 90%, щоб забезпечити достатній буфер пам’яті для висновків на більших партіях або залишити деякий простір для завантаження інших моделей, які використовуються менш часто.
Імітація трафіку користувачів
Після того як ми визначили кількість моделей, ми можемо запустити навантажувальний тест за допомогою Locust Load Testing Framework. Навантажувальний тест моделює запити користувачів до випадкових моделей і автоматично вимірює такі показники, як затримка відповіді та пропускна здатність.
Locust підтримує користувацькі форми тесту навантаження, які дозволяють визначати користувацькі шаблони трафіку. Форма, яка використовувалася в цьому тесті, показана на наступній діаграмі. У перші 30 секунд кінцева точка розігрівається з 10 одночасними користувачами. Через 30 секунд нові користувачі створюються зі швидкістю два на секунду, досягаючи 20 одночасних користувачів через 40 секунд. Потім кінцева точка порівнюється з 20 одночасними користувачами до 60-секундної позначки, після чого Locust знову починає нарощувати кількість користувачів зі швидкістю два за секунду до 40 одночасних користувачів. Цей шаблон нарощування та постійного тестування повторюється, доки кінцева точка не збільшиться до 200 одночасних користувачів. Залежно від вашого випадку використання, ви можете налаштувати форму тесту навантаження в locust_benchmark_sm.py, щоб точніше відображати очікувані моделі трафіку. Наприклад, якщо ви маєте намір розмістити більші мовні моделі, навантажувальний тест із 200 одночасними користувачами може бути неможливим для моделі, розміщеної на одному екземплярі, і тому ви можете зменшити кількість користувачів або збільшити кількість екземплярів. Ви також можете продовжити тривалість навантажувального тесту, щоб точніше оцінити стабільність кінцевої точки протягом тривалого періоду часу.
stages = [
{"duration": 30, "users": 10, "spawn_rate": 5},
{"duration": 60, "users": 20, "spawn_rate": 1},
{"duration": 90, "users": 40, "spawn_rate": 2},
…
]
Зауважте, що ми порівняли лише кінцеву точку з однорідними моделями, які працюють на узгоджених базах обслуговування за допомогою PyTorch або TensorRT. Це пояснюється тим, що MME найкраще підходять для розміщення багатьох моделей зі схожими характеристиками, такими як споживання пам’яті та час відгуку. Шаблони порівняльного аналізу, надані в GitHub репо все ще можна використовувати для визначення того, чи забезпечить обслуговування гетерогенних моделей на MME бажану продуктивність і стабільність.
Результати тестування для моделей CV
Використовуйте блокнот cv-benchmark.ipynb для запуску навантажувального тестування моделей комп’ютерного зору. Ви можете налаштувати попередньо навчену назву моделі та параметри типу екземпляра для навантажувального тестування продуктивності на різних комбінаціях моделі та типу екземпляра. Ми спеціально протестували три моделі CV у різних розмірах від найменшого до найбільшого: resnet50
(25M), convnext_base
(88M), і vit_large_patch16_224
(304M). Можливо, вам доведеться адаптуватися до коду, якщо ви виберете модель поза цим списком. крім того, блокнот за замовчуванням форму вхідного зображення має тензор зображення 224x224x3. Не забувайте відповідним чином налаштувати форму введення, якщо вам потрібно порівняти моделі, які приймають зображення іншого розміру.
Після перегляду всього блокнота ви отримаєте кілька візуалізацій аналізу продуктивності. Перші два деталізують продуктивність моделі щодо збільшення кількості одночасних користувачів. Наступні малюнки є прикладами візуалізацій, створених для ResNet50
модель працює на ml.g4dn.2xlarge, порівнюючи PyTorch (ліворуч) і TensorRT (праворуч). Верхні лінійні графіки показують затримку моделі та пропускну здатність на осі ординат зі збільшенням кількості одночасних робочих клієнтів, відображених на осі х. Нижня гістограма показує кількість успішних і невдалих запитів.
Переглядаючи всі перевірені нами моделі комп’ютерного зору, ми помітили наступне:
- Затримка (у мілісекундах) вища, а пропускна здатність (запитів на секунду) нижча для більших моделей (
resnet50 > convnext_base > vit_large_patch16_224
). - Збільшення затримки пропорційне кількості користувачів, оскільки більше запитів ставиться в чергу на сервер висновків.
- Великі моделі споживають більше обчислювальних ресурсів і можуть досягти максимальної пропускної здатності з меншою кількістю користувачів, ніж менші моделі. Це спостерігається з
vit_large_patch16_224
модель, яка зафіксувала перший невдалий запит у 140 одночасних користувачів. Будучи значно більшим за дві інші протестовані моделі, він також мав найбільшу кількість невдалих запитів при вищому паралелізмі. Це чіткий сигнал про те, що кінцевій точці потрібно буде масштабуватися за межі одного екземпляра, якщо намір полягає в підтримці понад 140 одночасних користувачів.
Наприкінці запуску блокнота ви також отримуєте зведене порівняння моделей PyTorch і TensorRT для кожного з чотирьох ключових показників. Згідно з нашим порівняльним тестуванням, у всіх моделях CV після компіляції TensorRT покращилася продуктивність. Беручи наші ResNet50
Знову для прикладу моделі затримка зменшилася на 32%, а пропускна здатність зросла на 18%. Хоча максимальна кількість одночасних користувачів залишилася незмінною ResNet50
, в обох інших моделях кількість одночасних користувачів, яких вони можуть підтримувати, збільшилася на 14%. Однак підвищення продуктивності TensorRT відбулося за рахунок більшого використання пам’яті, що призвело до того, що MME завантажували менше моделей. Вплив більший для моделей, що використовують згорточну нейронну мережу (CNN). Насправді наша модель ResNet50 споживала приблизно вдвічі більше пам’яті GPU, переходячи від PyTorch до TensorRT, що призвело до завантаження на 50% менше моделей (46 проти 23). Ми діагностуємо цю поведінку далі в наступному розділі.
Результати бенчмарку для моделей НЛП
Для моделей NLP використовуйте блокнот nlp-benchmark.ipynb, щоб запустити навантажувальний тест. Налаштування блокнота має виглядати дуже схожим. Ми протестували дві моделі NLP: bert-base-uncased (109M) і roberta-large (335M). Попередньо підготовлена модель і токенизатор завантажуються з концентратора Hugging Face, а тестове корисне навантаження генерується з токенизатора за допомогою зразка рядка. Максимальна довжина послідовності за замовчуванням становить 128. Якщо вам потрібно перевірити довші рядки, не забудьте налаштувати цей параметр. Запуск блокнота NLP генерує той самий набір візуалізацій: Pytorch (ліворуч) проти TensorRT (праворуч).
З них ми помітили ще більшу перевагу продуктивності TensorRT для моделей NLP. Беручи roberta-large
Наприклад, у моделі ml.g4dn.2xlarge затримка логічного висновку різко зменшилася з 180 мілісекунд до 56 мілісекунд (поліпшення на 70%), а пропускна здатність покращилася на 406% з 33 запитів на секунду до 167. Крім того, максимальна кількість одночасних кількість користувачів збільшилася на 50%; невдалі запити не спостерігалися, доки ми не досягли 180 одночасних користувачів, порівняно зі 120 для оригінальної моделі PyTorch. З точки зору використання пам’яті, ми побачили, що для TensorRT завантажено одну модель менше (з дев’яти моделей до восьми). Однак негативний вплив набагато менший порівняно з тим, що ми спостерігали з моделями на основі CNN.
Аналіз використання пам'яті
У наступній таблиці показано повний аналіз впливу використання пам’яті від PyTorch до TensorRT. Раніше ми згадували, що моделі на основі CNN зазнають більш негативного впливу. The ResNet50
кількість моделей, завантажених у всіх трьох типах екземплярів GPU, зменшилася на 50%. Convnext_base
було ще більше скорочення приблизно на 70% за всіма напрямками. З іншого боку, вплив на трансформаторні моделі невеликий або змішаний. vit_large_patch16_224
та roberta-large
мали середнє скорочення приблизно на 20% і 3%, відповідно bert-base-uncased
було покращення приблизно на 40%.
Розглядаючи всі точки даних у цілому щодо чудової продуктивності щодо затримки, пропускної здатності та надійності, а також незначного впливу на максимальну кількість завантажених моделей, ми рекомендуємо модель TensorRT для архітектур на основі трансформаторів. Для CNN ми вважаємо, що потрібен додатковий аналіз ефективності витрат, щоб переконатися, що переваги продуктивності переважують вартість додаткової інфраструктури хостингу.
Випадок використання ML | архітектура | Назва моделі | Тип екземпляра | Рамки | Максимальна кількість завантажених моделей | Різниця (%) | Середнє Різниця (%) |
CV | CNN | Resnet50 |
ml.g4dn.2xlarge | PyTorch | 46 | -50% | -50% |
TensorRT | 23 | ||||||
мл.g5.2xвеликий | PyTorch | 70 | -51% | ||||
TensorRT | 34 | ||||||
ml.p3.2xlarge | PyTorch | 49 | -51% | ||||
TensorRT | 24 | ||||||
Convnext_base |
ml.g4dn.2xlarge | PyTorch | 33 | -50% | -70% | ||
TensorRT | 10 | ||||||
мл.g5.2xвеликий | PyTorch | 50 | -70% | ||||
TensorRT | 16 | ||||||
ml.p3.2xlarge | PyTorch | 35 | -69% | ||||
TensorRT | 11 | ||||||
Трансформатор | vit_large_patch16_224 |
ml.g4dn.2xlarge | PyTorch | 10 | -30% | -20% | |
TensorRT | 7 | ||||||
мл.g5.2xвеликий | PyTorch | 15 | -13% | ||||
TensorRT | 13 | ||||||
ml.p3.2xlarge | PyTorch | 11 | -18% | ||||
TensorRT | 9 | ||||||
НЛП | Roberta-large |
ml.g4dn.2xlarge | PyTorch | 9 | -11% | -3% | |
TensorRT | 8 | ||||||
мл.g5.2xвеликий | PyTorch | 13 | 0% | ||||
TensorRT | 13 | ||||||
ml.p3.2xlarge | PyTorch | 9 | 0% | ||||
TensorRT | 9 | ||||||
Bert-base-uncased |
ml.g4dn.2xlarge | PyTorch | 26 | 62% | 40% | ||
TensorRT | 42 | ||||||
мл.g5.2xвеликий | PyTorch | 39 | 28% | ||||
TensorRT | 50 | ||||||
ml.p3.2xlarge | PyTorch | 28 | 29% | ||||
TensorRT | 36 |
У наведених нижче таблицях наведено результати нашого повного порівняльного тесту для всіх показників усіх трьох типів екземплярів GPU.
ml.g4dn.2xlarge |
||||||||||||
Використовуйте Case | архітектура | Назва моделі | Кількість параметрів | Рамки | Максимальна кількість завантажених моделей | Різниця (%) | Затримка (мс) | Різниця (%) | Пропускна здатність (qps) | Різниця (%) | Максимальна кількість одночасних користувачів | Різниця (%) |
CV | CNN | resnet50 |
25M | PyTorch | 46 | -50% | 164 | -32% | 120 | 18% | 180 | NA |
TensorRT | 23 | . | 111 | . | 142 | . | 180 | . | ||||
convnext_base |
88M | PyTorch | 33 | -70% | 154 | -22% | 64 | 102% | 140 | 14% | ||
TensorRT | 10 | . | 120 | . | 129 | . | 160 | . | ||||
Трансформатор | vit_large_patch16_224 |
304M | PyTorch | 10 | -30% | 425 | -69% | 26 | 304% | 140 | 14% | |
TensorRT | 7 | . | 131 | . | 105 | . | 160 | . | ||||
НЛП | bert-base-uncased |
109M | PyTorch | 26 | 62% | 70 | -39% | 105 | 142% | 140 | 29% | |
TensorRT | 42 | . | 43 | . | 254 | . | 180 | . | ||||
roberta-large |
335M | PyTorch | 9 | -11% | 187 | -70% | 33 | 406% | 120 | 50% | ||
TensorRT | 8 | . | 56 | . | 167 | . | 180 | . |
мл.g5.2xвеликий |
||||||||||||
Використовуйте Case | архітектура | Назва моделі | Кількість параметрів | Рамки | Максимальна кількість завантажених моделей | Різниця (%) | Затримка (мс) | Різниця (%) | Пропускна здатність (qps) | Різниця (%) | Максимальна кількість одночасних користувачів | Різниця (%) |
CV | CNN | resnet50 |
25M | PyTorch | 70 | -51% | 159 | -31% | 146 | 14% | 180 | 11% |
TensorRT | 34 | . | 110 | . | 166 | . | 200 | . | ||||
convnext_base |
88M | PyTorch | 50 | -68% | 149 | -23% | 134 | 13% | 180 | 0% | ||
TensorRT | 16 | . | 115 | . | 152 | . | 180 | . | ||||
Трансформатор | vit_large_patch16_224 |
304M | PyTorch | 15 | -13% | 149 | -22% | 105 | 35% | 160 | 25% | |
TensorRT | 13 | . | 116 | . | 142 | . | 200 | . | ||||
НЛП | bert-base-uncased |
109M | PyTorch | 39 | 28% | 65 | -29% | 183 | 38% | 180 | 11% | |
TensorRT | 50 | . | 46 | . | 253 | . | 200 | . | ||||
roberta-large |
335M | PyTorch | 13 | 0% | 97 | -38% | 121 | 46% | 140 | 14% | ||
TensorRT | 13 | . | 60 | . | 177 | . | 160 | . |
ml.p3.2xlarge |
||||||||||||
Використовуйте Case | архітектура | Назва моделі | Кількість параметрів | Рамки | Максимальна кількість завантажених моделей | Різниця (%) | Затримка (мс) | Різниця (%) | Пропускна здатність (qps) | Різниця (%) | Максимальна кількість одночасних користувачів | Різниця (%) |
CV | CNN | resnet50 |
25M | PyTorch | 49 | -51% | 197 | -41% | 94 | 18% | 160 | -12% |
TensorRT | 24 | . | 117 | . | 111 | . | 140 | . | ||||
convnext_base |
88M | PyTorch | 35 | -69% | 178 | -23% | 89 | 11% | 140 | 14% | ||
TensorRT | 11 | . 137 | 137 | . | 99 | . | 160 | . | ||||
Трансформатор | vit_large_patch16_224 |
304M | PyTorch | 11 | -18% | 186 | -28% | 83 | 23% | 140 | 29% | |
TensorRT | 9 | . | 134 | . | 102 | . | 180 | . | ||||
НЛП | bert-base-uncased |
109M | PyTorch | 28 | 29% | 77 | -40% | 133 | 59% | 140 | 43% | |
TensorRT | 36 | . | 46 | . | 212 | . | 200 | . | ||||
roberta-large |
335M | PyTorch | 9 | 0% | 108 | -44% | 88 | 60% | 160 | 0% | ||
TensorRT | 9 | . | 61 | . | 141 | . | 160 | . |
У наведеній нижче таблиці підсумовано результати для всіх типів екземплярів. Екземпляр ml.g5.2xlarge забезпечує найкращу продуктивність, тоді як екземпляр ml.p3.2xlarge загалом має низьку продуктивність, незважаючи на те, що він найдорожчий із трьох. Екземпляри g5 та g4dn демонструють найкраще значення для робочих навантажень висновків.
Використовуйте Case | архітектура | Назва моделі | Кількість параметрів | Рамки | Тип екземпляра | Максимальна кількість завантажених моделей | Різниця (%) | Затримка (мс) | Різниця (%) | Пропускна здатність (qps) | Різниця (%) | Максимальна кількість одночасних користувачів |
CV | CNN | resnet50 |
25M | PyTorch | мл.g5.2xвеликий | 70 | . | 159 | . | 146 | . | 180 |
. | . | . | . | . | ml.p3.2xlarge | 49 | . | 197 | . | 94 | . | 160 |
. | . | . | . | . | ml.g4dn.2xlarge | 46 | . | 164 | . | 120 | . | 180 |
CV | CN | resnet50 |
25M | TensorRT | мл.g5.2xвеликий | 34 | -51% | 110 | -31% | 166 | 14% | 200 |
. | . | . | . | . | ml.p3.2xlarge | 24 | -51% | 117 | -41% | 111 | 18% | 200 |
. | . | . | . | . | ml.g4dn.2xlarge | 23 | -50% | 111 | -32% | 142 | 18% | 180 |
НЛП | Трансформатор | bert-base-uncased |
109M | Піторх | мл.g5.2xвеликий | 39 | . | 65 | . | 183 | . | 180 |
. | . | . | . | . | ml.p3.2xlarge | 28 | . | 77 | . | 133 | . | 140 |
. | . | . | . | . | ml.g4dn.2xlarge | 26 | . | 70 | . | 105 | . | 140 |
НЛП | Трансформатор | bert-base-uncased |
109M | TensorRT | мл.g5.2xвеликий | 50 | 28% | 46 | -29% | 253 | 38% | 200 |
. | . | . | . | . | ml.p3.2xlarge | 36 | 29% | 46 | -40% | 212 | 59% | 200 |
. | . | . | . | . | ml.g4dn.2xlarge | 42 | 62% | 43 | -39% | 254 | 142% | 180 |
Прибирати
Після завершення навантажувального тесту очистіть згенеровані ресурси, щоб уникнути додаткових витрат. Основними ресурсами є кінцеві точки SageMaker і файли артефактів моделі в Amazon S3. Щоб вам було легше, файли блокнота мають такий код очищення, який допоможе їх видалити:
Висновок
У цій публікації ми поділилися нашими результатами тестування й аналізу різних моделей глибокої нейронної мережі, що працюють на мультимодельних кінцевих точках SageMaker із графічним процесором. Результати та розуміння, якими ми поділилися, мають надати розумний переріз ефективності за різними показниками та типами екземплярів. У процесі ми також представили наш рекомендований підхід до проведення порівняльного тестування для SageMaker MME з GPU. Інструменти та зразок коду, які ми надали, можуть допомогти вам швидко розпочати порівняльне тестування та прийняти більш обґрунтоване рішення щодо економічно ефективного розміщення сотень моделей DNN на апаратному забезпеченні прискорених обчислень. Щоб розпочати порівняльний аналіз власних моделей із підтримкою MME для GPU, див Підтримувані алгоритми, фреймворки та екземпляри і GitHub репо для додаткових прикладів і документації.
Про авторів
Джеймс Ву є старшим архітектором рішень для AI/ML у AWS. допомога клієнтам у проектуванні та створенні рішень AI/ML. Робота Джеймса охоплює широкий спектр випадків використання машинного машинного навчання, з головним інтересом до комп’ютерного зору, глибокого навчання та масштабування машинного машинного навчання на підприємстві. До того, як приєднатися до AWS, Джеймс був архітектором, розробником і технологічним лідером понад 10 років, у тому числі 6 років у галузі інженерії та 4 роки в галузі маркетингу та реклами.
Вікрам Еланго є архітектором-спеціалістом з рішень AI/ML у Amazon Web Services, що базується у Вірджинії, США. Vikram допомагає клієнтам фінансової та страхової індустрії з дизайном, лідерством у розробці та розгортанні програм машинного навчання в масштабі. Наразі він зосереджений на обробці природної мови, відповідальному штучному інтелекті, оптимізації висновку та масштабуванні машинного навчання на підприємстві. У вільний час він любить подорожувати, ходити в походи, готувати та відпочивати разом із сім’єю.
Симон Замарін є архітектором рішень у сфері штучного інтелекту та машинного навчання, основним завданням якого є допомога клієнтам отримувати цінність зі своїх ресурсів даних. У вільний час Саймон любить проводити час із сім’єю, читати фантастику та працювати над різними проектами будинків своїми руками.
Саураб Тріканде є старшим менеджером із продуктів Amazon SageMaker Inference. Він захоплений роботою з клієнтами та мотивований метою демократизації машинного навчання. Він зосереджується на основних проблемах, пов’язаних із розгортанням складних програм ML, моделями ML з кількома клієнтами, оптимізацією витрат і забезпеченням більшої доступності розгортання моделей глибокого навчання. У вільний час Саураб любить піші прогулянки, вивчає інноваційні технології, стежить за TechCrunch і проводить час із сім’єю.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- Платоблокчейн. Web3 Metaverse Intelligence. Розширені знання. Доступ тут.
- джерело: https://aws.amazon.com/blogs/machine-learning/achieve-high-performance-at-scale-for-model-serving-using-amazon-sagemaker-multi-model-endpoints-with-gpu/
- 10
- 100
- 11
- 2022
- 7
- a
- здатність
- МЕНЮ
- прискорений
- доступною
- відповідно
- точно
- Achieve
- через
- доданий
- доповнення
- Додатковий
- Додатково
- прийнята
- реклама
- після
- AI
- AI / ML
- алгоритми
- ВСІ
- дозволяє
- хоча
- Amazon
- Amazon SageMaker
- Amazon Web Services
- кількість
- аналіз
- аналізувати
- та
- Інший
- застосування
- підхід
- приблизно
- архітектура
- Активи
- автоматичний
- автоматично
- середній
- AWS
- бар
- заснований
- оскільки
- перед тим
- за
- буття
- Вірити
- еталонний тест
- орієнтир
- бенчмаркінг
- користь
- КРАЩЕ
- За
- більший
- мільярди
- рада
- підвищення
- дно
- буфера
- будувати
- тягар
- випадок
- випадків
- проблеми
- характеристика
- вантажі
- Графік
- Чарти
- ясно
- клієнт
- CNN
- код
- комбінації
- порівняний
- порівняння
- порівняння
- повний
- комплекс
- складність
- У складі
- обчислення
- комп'ютер
- Комп'ютерне бачення
- висновок
- одночасно
- конфігурація
- послідовний
- споживати
- спожитий
- споживання
- Контейнер
- контекст
- продовжувати
- Core
- Коштувати
- рентабельним
- Обкладинки
- Перетинати
- Поточний
- В даний час
- виготовлений на замовлення
- Клієнти
- дані
- точки даних
- рішення
- глибокий
- глибоке навчання
- глибше
- за замовчуванням
- доставляти
- Попит
- Демократизувати
- демонструвати
- Залежно
- розгортання
- розгортання
- розгортання
- розгортання
- дизайн
- бажаний
- Незважаючи на
- деталь
- деталі
- Визначати
- певний
- Розробник
- пристрій
- різний
- Diy
- документація
- скачати
- різко
- динамічний
- кожен
- Раніше
- легше
- або
- Кінцева точка
- Машинобудування
- підприємство
- Весь
- помилка
- Навіть
- приклад
- Приклади
- перевищувати
- очікуваний
- дорогий
- Досліди
- продовжити
- витяг
- Face
- фактори
- не вдалося
- сім'я
- мода
- реально
- цифри
- Файли
- фінансовий
- знайти
- Перший
- Сфокусувати
- увагу
- фокусується
- після
- Рамки
- каркаси
- від
- Повний
- далі
- в цілому
- генерується
- генерує
- генеративний
- Генеративний ШІ
- отримати
- дає
- мета
- буде
- GPU
- Графічні процесори
- графіки
- Зростання
- керівництво
- рука
- апаратні засоби
- допомога
- допомогу
- допомагає
- Високий
- вище
- господар
- відбувся
- хостинг
- будинок
- Як
- How To
- Однак
- HTML
- HTTPS
- Концентратор
- Сотні
- ідеальний
- зображення
- Impact
- вплив
- поліпшений
- поліпшення
- in
- включати
- У тому числі
- Augmenter
- збільшений
- Збільшує
- зростаючий
- індивідуальний
- промисловості
- промисловість
- вплив
- повідомив
- Інфраструктура
- початковий
- інноваційний
- інноваційні технології
- вхід
- розуміння
- екземпляр
- страхування
- намір
- інтерес
- введені
- Вступ
- викликає
- IT
- приєднання
- ключ
- мова
- великий
- більше
- найбільших
- Затримка
- лідер
- Керівництво
- вивчення
- догляд
- довжина
- рамки
- Лінія
- список
- списки
- загрузка
- погрузка
- довше
- подивитися
- низький
- машина
- навчання за допомогою машини
- головний
- зробити
- Робить
- менеджер
- управляє
- управління
- багато
- позначити
- Маркетинг
- Маркетинг та реклама
- Макс
- Максимізувати
- максимальний
- вимір
- заходи
- пам'ять
- згаданий
- методика
- Метрика
- незначний
- змішаний
- ML
- модель
- Моделі
- більше
- найбільш
- Найбільш популярний
- мотивовані
- MS
- множинний
- ім'я
- Природний
- Обробка природних мов
- Необхідність
- негативний
- негативно
- мережу
- нейронної мережі
- Нові
- nlp
- ноутбук
- Листопад
- номер
- номера
- ONE
- операційний
- оперативний
- оптимізація
- оптимальний
- варіант
- оригінал
- Інше
- поза
- загальний
- власний
- алюр
- параметр
- параметри
- пристрасний
- Викрійки
- моделі
- відсотків
- Виконувати
- продуктивність
- виконанні
- period
- вибирати
- plato
- Інформація про дані Платона
- PlatoData
- точка
- точок
- популярний
- це можливо
- пошта
- раніше
- первинний
- попередній
- процес
- обробка
- Product
- менеджер по продукції
- проектів
- правильний
- забезпечувати
- за умови
- забезпечує
- put
- піторх
- кількість
- Рамп
- пандус
- випадковий
- діапазон
- швидко
- ставка
- досягати
- досяг
- досягнення
- читання
- розумний
- Причини
- рекомендувати
- рекомендований
- записаний
- зменшити
- Знижений
- відображати
- відображено
- що стосується
- пов'язаний
- надійність
- запам'ятати
- повторювати
- повторний
- запросити
- запитів
- Вимога
- Вимагається
- ресурси
- відповідь
- відповідальний
- в результаті
- результати
- прогін
- біг
- мудрець
- Висновок SageMaker
- то ж
- масштабовані
- шкала
- Масштабування
- науково-фантастичний
- другий
- seconds
- розділ
- старший
- Послідовність
- Послуги
- виступаючої
- комплект
- установка
- кілька
- Форма
- форми
- Поділитись
- загальні
- поділ
- Повинен
- Показувати
- показаний
- Шоу
- сторона
- Сигнал
- істотно
- аналогічний
- Саймон
- простий
- один
- Розмір
- розміри
- невеликий
- менше
- рішення
- Рішення
- деякі
- Простір
- спеціаліст
- зазначений
- Витрати
- Стабільність
- почалася
- залишився
- стійкий
- Крок
- заходи
- Як і раніше
- зберігання
- стратегії
- сильний
- успішний
- такі
- підсумовувати
- РЕЗЮМЕ
- чудовий
- підтримка
- Підтриманий
- Опори
- таблиця
- Приймати
- взяття
- TechCrunch
- Технології
- Технологія
- шаблон
- Шаблони
- terms
- тест
- Тестування
- Команда
- їх
- отже
- думка
- думка лідерства
- три
- поріг
- через
- пропускна здатність
- час
- до
- разом
- інструменти
- топ
- Усього:
- трафік
- Подорож
- суд
- Двічі
- Типи
- типово
- USA
- використання
- використання випадку
- користувач
- користувачі
- значення
- різний
- Віргінія
- бачення
- Ордер
- Web
- веб-сервіси
- Що
- Чи
- який
- в той час як
- всі
- широкий
- Широкий діапазон
- волі
- в
- без
- Work
- робочі
- робочий
- б
- років
- вихід
- Ти
- вашу
- зефірнет