⚠️ Эта функция всё ещё экспериментальная. Пожалуйста, используйте её с осторожностью.
Включение функции динамического MIG
HAMi теперь поддерживает динамический MIG с помощью mig-parted для динамической настройки MIG-устройств, включая:
-
Динамическое управление MIG-инстансами: пользователям больше не нужно напрямую работать с GPU-узлами или использовать команды вроде
nvidia-smi -i 0 -mig 1для управления MIG-инстансами. HAMi-device-plugin будет делать это автоматически. -
Динамическая настройка MIG: каждое MIG-устройство, управляемое HAMi, будет динамически подстраивать свой MIG-шаблон в зависимости от поданных заданий.
-
Наблюдение за MIG-устройствами: каждый MIG-инстанс, созданный HAMi, будет отображаться в мониторе планировщика вместе с информацией о заданиях, обеспечивая наглядный обзор MIG-узлов.
-
Совместимость с HAMi-Core узлами: HAMi может управлять единым пулом GPU как на HAMi-core узлах, так и на MIG-узлах. Задание может быть запланировано на любой из этих узлов, если не указано вручную с помощью аннотации
nvidia.com/vgpu-mode. -
Унифицированный API с HAMi-Core: не требуется дополнительных действий для совместимости заданий с функцией динамического MIG.
Содержание
Предварительные требования
- GPU NVIDIA Blackwell, Hopper™ и Ampere
- Установленная сборка HAMi от Alauda
Включение поддержки динамического MIG
- Настройте режим в configMap device-plugin на mig для MIG-узлов
Замените имя узла в массиве
nodeconfigна имя узла, для которого хотите установить режим mig. Если узлов несколько, увеличьте количество элементов массива. - Перезапустите следующие поды, чтобы изменения вступили в силу:
- hami-scheduler
- hami-device-plugin на узле 'MIG-NODE-A'
Примечание:
Данная конфигурация будет потеряна при обновлениях; будущие версии HAMi улучшат этот момент.
Пользовательская конфигурация MIG (опционально)
В настоящее время HAMi имеет встроенную конфигурацию MIG.
Вы можете настроить конфигурацию MIG, выполнив следующие шаги:
Затем перезапустите компоненты hami-scheduler.
HAMi определит и использует первый MIG-шаблон, который соответствует заданию, в порядке, определённом в этом configMap.
Примечание:
Данная конфигурация будет потеряна при обновлениях; будущие версии HAMi улучшат этот момент.
Запуск заданий MIG
Теперь MIG-инстанс можно запросить контейнером так же, как и hami-core, просто указав ресурсы nvidia.com/gpualloc и nvidia.com/gpumem.
Примечания:
- Значение
nvidia.com/gpuallocне может превышать фактическое количество физических GPU. Например, GPU в режиме MiG может быть установлен только в 1. Это ограничение HAMi, которое будет улучшено в будущих версиях. - На MIG-узлах никаких действий не требуется — всё управляется mig-parted в hami-device-plugin.
- Устройства NVIDIA старше архитектуры Ampere не поддерживают режим MIG.
- Ресурсы MIG (например,
nvidia.com/mig-1g.10gb) не будут видны на узле. HAMi использует единое имя ресурса для MIG и hami-core узлов. - Компонент
DCGM-exporter, развернутый на MIG-узлах, должен быть остановлен при выполнении MIG-разбиения, так как оно требует сброса GPU. После создания первой рабочей нагрузки с включённым MIG выполняется автоматическое MIG-разбиение. Последующие рабочие нагрузки не вызывают повторного разбиения. Когда все рабочие нагрузки остановлены, повторный запуск первой рабочей нагрузки снова вызовет MIG-разбиение.