Открыть сервис

Elastic Inference

Elastic Inference — это технология облачных вычислений, разработанная компанией Amazon Web Services (AWS), предназначенная для ускорения выполнения задач машинного обучения (ML) и глубокого обучения (DL) путём подключения специализированных аппаратных ускорителей к вычислительным экземплярам общего назначения. Elastic Inference позволяет снизить затраты на инференс (вывод модели) за счёт использования дешёвых вычислительных ресурсов для обработки данных и более дорогих ускорителей только для выполнения непосредственно операций вывода, без необходимости приобретать и поддерживать дорогостоящие графические процессоры (GPU) на постоянной основе.

История

Технология Elastic Inference была анонсирована компанией AWS в 2018 году на конференции re:Invent. Первоначально она поддерживала только фреймворки TensorFlow и Apache MXNet. В 2019 году поддержка была расширена на PyTorch и ONNX. В 2020 году AWS представила Elastic Inference Accelerator (EI) второго поколения, обеспечивающий более высокую производительность при тех же затратах. В 2021 году компания объявила о прекращении поддержки Elastic Inference для новых клиентов, сосредоточив усилия на других сервисах инференса, таких как Amazon SageMaker и AWS Inferentia. Тем не менее, существующие пользователи могли продолжать использовать технологию до полного прекращения поддержки в 2022 году.

Архитектура и принцип работы

Elastic Inference представляет собой модель «ускоритель как услуга» (accelerator as a service). В отличие от традиционного подхода, где GPU или TPU устанавливаются непосредственно на вычислительном узле, Elastic Inference использует сетевую архитектуру, при которой ускоритель подключается к экземпляру Amazon EC2 или к конечной точке Amazon SageMaker через высокоскоростное сетевое соединение.

Основные компоненты архитектуры:

  • Вычислительный экземпляр — стандартный экземпляр EC2 (например, семейств C5, M5, R5) или SageMaker Notebook, который выполняет предобработку данных, загрузку модели и управление процессом.
  • Ускоритель Elastic Inference — специализированное аппаратное обеспечение, реализованное на базе FPGA (программируемые вентильные матрицы) или ASIC (специализированные интегральные схемы), которое выполняет только операции прямого распространения (forward pass) нейронной сети.
  • Сетевой интерфейс — протокол, обеспечивающий передачу данных между экземпляром и ускорителем с минимальной задержкой (обычно менее 1 мс).

Процесс инференса с использованием Elastic Inference выглядит следующим образом:

  1. Пользователь запускает вычислительный экземпляр и подключает к нему ускоритель необходимого размера.
  2. Модель загружается в память ускорителя.
  3. Входные данные передаются на ускоритель для выполнения операций вывода.
  4. Результат возвращается обратно на вычислительный экземпляр.

Размеры ускорителей

AWS предлагала несколько размеров ускорителей Elastic Inference, которые различались производительностью и стоимостью:

Размер ускорителяПроизводительность (TFLOPS)Объём памяти (ГБ)Примерная стоимость ($/час)
eia1.medium110.13
eia1.large220.26
eia1.xlarge440.52
eia2.medium220.15
eia2.large440.30
eia2.xlarge880.60

Преимущества и недостатки

Преимущества

  • Экономия затрат — основное преимущество Elastic Inference. Пользователи платят только за используемый ускоритель почасово, а не за полный GPU-экземпляр, который может быть дороже в 3–5 раз при той же производительности инференса.
  • Гибкость — возможность подключать ускорители к различным типам вычислительных экземпляров, включая те, которые не поддерживают установку GPU (например, семейства с процессорами Intel Xeon без дискретной графики).
  • Простота интеграции — технология поддерживает популярные фреймворки (TensorFlow, PyTorch, MXNet, ONNX) и требует минимальных изменений в коде (обычно достаточно указать тип ускорителя в конфигурации).
  • Масштабируемость — возможность динамически добавлять или удалять ускорители в зависимости от нагрузки, что особенно полезно для приложений с переменной интенсивностью запросов.

Недостатки

  • Задержка сети — поскольку ускоритель подключается через сеть, возникает дополнительная задержка (латентность), которая может быть критичной для приложений реального времени (например, автономное вождение или медицинская диагностика).
  • Ограниченная поддержка моделей — технология оптимизирована для моделей среднего размера (до нескольких гигабайт). Крупные модели (например, GPT-3 с сотнями гигабайт) не помещаются в память ускорителя.
  • Прекращение поддержки — AWS объявила о закрытии сервиса для новых клиентов, что ограничивает его долгосрочную применимость.
  • Зависимость от фреймворков — не все операции нейронных сетей поддерживаются; требуется проверка совместимости модели с конкретным фреймворком.

Применение

Elastic Inference использовалась в следующих сценариях:

  • Инференс в реальном времени — обработка запросов от веб-приложений (например, рекомендательные системы, классификация изображений, обработка естественного языка).
  • Пакетная обработка — выполнение задач инференса на больших наборах данных, где задержка не критична (например, анализ исторических данных, генерация отчётов).
  • Обучение с подкреплением — в средах, где требуется быстрое выполнение симуляций с использованием обученных моделей.
  • Edge-вычисления — в сочетании с AWS Greengrass для развёртывания моделей на периферийных устройствах с ограниченными вычислительными ресурсами.

Альтернативы

После прекращения поддержки Elastic Inference пользователи AWS могут использовать следующие альтернативы:

  • AWS Inferentia — специализированный чип для инференса, доступный через экземпляры Amazon EC2 Inf1 и Inf2.
  • Amazon SageMaker — полностью управляемый сервис для обучения и развёртывания моделей, поддерживающий автоматическое масштабирование и оптимизацию затрат.
  • GPU-экземпляры EC2 — традиционные экземпляры с GPU (например, P3, P4, G4, G5), которые обеспечивают максимальную производительность, но требуют больших затрат.
  • AWS Lambda с контейнерами — для бессерверного инференса с использованием контейнеров Docker.

Критика

Основная критика Elastic Inference связана с её сетевым характером. Исследователи и инженеры отмечали, что задержка, вносимая сетевым соединением, может нивелировать преимущества аппаратного ускорения для задач, требующих минимального времени отклика. Кроме того, ограниченный объём памяти ускорителей (максимум 8 ГБ) делал технологию непригодной для современных крупных моделей, таких как BERT-large или GPT-2. Некоторые пользователи также жаловались на сложность настройки и отладки, особенно при использовании нестандартных архитектур нейронных сетей.

Источники

  • Документация Amazon Web Services: «Elastic Inference» (2018–2022).
  • Презентация AWS re:Invent 2018: «Introducing Amazon Elastic Inference».
  • Статья на портале InfoQ: «AWS Elastic Inference: A Deep Dive» (2019).
  • Блог компании AWS: «New – Amazon Elastic Inference Accelerator (EI) Second Generation» (2020).
  • Отчёт Gartner: «Magic Quadrant for Cloud AI Developer Services» (2021).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →