Об этом проекте
Apex — поддерживаемый NVIDIA набор утилит, цель которого — быстро предоставить пользователям PyTorch актуальные возможности смешанной точности и распределённого обучения; часть кода в перспективе должна попасть в upstream PyTorch.
Что он предоставляет:
- Вспомогательные средства обучения со смешанной точностью (apex.amp) для запуска моделей в пониженной точности.
- Утилиты распределённого обучения, включая apex.parallel.DistributedDataParallel и SyncBatchNorm.
- Объединённые ядра для оптимизаторов, таких как FusedAdam, и слоёв нормализации, таких как FusedLayerNorm и FusedRMSNorm.
- Набор опциональных модулей contrib, охватывающих такие области, как разреженность, групповая пакетная нормализация, xentropy, focal loss, transducer losses, peer memory, NCCL P2P, узкие слои, распределённые оптимизаторы и GPU direct storage.
Замечания по установке:
- Контейнеры NVIDIA PyTorch на NGC поставляются с уже доступными пользовательскими расширениями.
- При сборке из исходного кода рекомендуемый путь использует переменные окружения, такие как APEX_CPP_EXT=1 и APEX_CUDA_EXT=1, вместе с pip install --no-build-isolation; устаревшие флаги командной строки (--cpp_ext, --cuda_ext) по-прежнему поддерживаются.
- Возможна сборка только на Python, но она исключает объединённые ядра, поэтому FusedAdam, FusedLayerNorm/FusedRMSNorm и объединённые пути для SyncBatchNorm, DistributedDataParallel и amp становятся недоступными или медленнее.
- Отдельные модули contrib требуют собственных опций установки; некоторые могут быть совместимы только с nightly-сборками PyTorch, а не со стабильными релизами. APEX_ALL_CONTRIB_EXT=1 собирает все расширения contrib сразу.
- Для более быстрой компиляции рекомендуется Ninja, а параметры параллельной сборки документированы для сред с ограниченными ресурсами CPU или памяти.
- Поддержка Windows описывается как экспериментальная.
Это библиотека для разработчиков, обучающих модели глубокого обучения и желающих получить строительные блоки смешанной точности и распределённого обучения, а не приложение для конечных пользователей.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.