Битва за Терафлопсы: Как устроена инфраструктура для ИИ на уровне Enterprise
Когда компания масштабирует ИИ до уровня корпорации, она неизбежно сталкивается с «железным потолком». Видеокарты NVIDIA H100 стоят как элитные внедорожники, а их дефицит заставляет инженеров бороться за каждый процент утилизации GPU.
Главный вопрос архитектора сегодня: как сделать так, чтобы дорогое железо не простаивало? Ответ лежит в плоскости управления ресурсами через Slurm и Kubernetes.
1 Slurm vs Kubernetes: Две философии управления мощностью
В современных ИИ-кластерах эти две системы часто сосуществуют, разделяя обязанности между обучением и эксплуатацией.
Slurm: Пакетный диспетчер
Пришел из мира суперкомпьютеров. Его логика — «Exclusive & Batch». Идеален для длительного обучения моделей, где важна монополия на ресурсы и отсутствие помех от других процессов.
Kubernetes: Мастер инференса
Ориентирован на «Microservices & High Availability». K8s мгновенно реагирует на запросы, поднимая реплики моделей на свободных GPU для обслуживания пользователей.
"Обучение нейросети — это непрерывный процесс. Если на середине обучения, которое идет 3 дня, кто-то «подселится» на вашу видеокарту и вызовет нехватку памяти (OOM), вся работа пойдет прахом."
2 Искусство деления: Как не тратить GPU впустую
Отдавать целую карту A100/H100 под маленькую модель-классификатор — это экономическое преступление. На помощь приходят технологии разделения (Slicing).
-
MIG (Multi-Instance GPU): Аппаратный скальпель. Позволяет разрезать одну физическую карту на 7 независимых мини-видеокарт на уровне кремния. Гарантирует полную изоляцию памяти и вычислительных блоков.
-
Time Slicing: Программная очередь. Имитация многозадачности через быстрое переключение между задачами. Дешево в настройке, но несет риски падения всех сервисов при переполнении памяти одним из них.
Когда модель больше, чем карта: Распределенный инференс
Современные модели класса 70B и выше весят более 130 ГБ в формате FP16. Ни одна существующая карта не вместит их целиком. Архитектору необходимо настроить кластер так, чтобы карты общались между собой почти мгновенно.
Pipeline Parallelism
Разрезание модели по слоям между разными GPU.
Tensor Parallelism
Параллельное вычисление матриц внутри одного слоя.
Важное требование
Чтобы это работало без тормозов, видеокарты должны быть соединены не через PCIe, а через NVLink со скоростью до 900 ГБ/с. В облаке или ЦОД для этого используются серверные платформы типа NVIDIA HGX.