Революция в Expert Parallelism: от NVSHMEM к NCCL Gin
DeepSeek представила DeepEP V2.5, кардинально переработанную версию библиотеки для высокоскоростной коммуникации в моделях с экспертами (MoE). Главная архитектурная новинка — полный отказ от тяжеловесного бэкенда NVSHMEM в пользу NCCL Gin. Это решение позволило унифицировать интерфейсы для high-throughput и low-latency операций в едином классе ElasticBuffer, упростив интеграцию в существующие пайплайны обучения и инференса.
Ключевое преимущество новой версии — аналитический расчет количества Streaming Multiprocessors (SM) и Queue Pairs (QP). Разработчикам больше не нужно проводить ручное авто-тюнингирование: система сама вычисляет оптимальные ресурсы, что снижает накладные расходы на запуск.
Производительность: скорость против ресурсов
DeepEP V2.5 демонстрирует выдающиеся результаты на архитектуре Hopper (SM90) и Blackwell (SM100). Библиотека достигает пропускной способности, ограниченной только физическими возможностями сети (RDMA/NVLink), при этом используя значительно меньше вычислительных ресурсов GPU по сравнению с версией V1.
| Архитектура | Тип сети | Конфигурация EP | Пропускная способность (Dispatch) | Пропускная способность (Combine) | Использование SM |
|---|---|---|---|---|---|
| SM90 (Hopper) | CX7 (RDMA) | EP 8 x 2 | 90 GB/s | 81 GB/s | 12 |
| SM90 (Hopper) | CX7 (RDMA) | EP 8 x 4 | 61 GB/s | 61 GB/s | 12 |
| SM100 (Blackwell) | CX7 (RDMA) | EP 8 x 2 | 90 GB/s | 91 GB/s | 12 |
| SM100 (Blackwell) | NVLink | EP 8 | 726 GB/s | 740 GB/s | 64 (Макс. perf) |
| SM100 (Blackwell) | NVLink | EP 8 | 643 GB/s | 675 GB/s | 24 (Мин. SM) |
Сравнение с предыдущей версией показывает рост пиковой производительности до 1.3x при одновременном сокращении потребления SM до 4x. Для legacy-сценариев обучения использование SM снизилось с 24 до 4–6 при сохранении или улучшении общей скорости.
Технические детали и требования
Библиотека работает по принципу Header-only и использует Just-In-Time (JIT) компиляцию ядрами во время выполнения, что исключает необходимость ручной сборки CUDA-кода при установке. Поддерживается работа с FP8 для диспетчеризации и BF16 для комбинирования, что критично для современных LLM.
- Масштабируемость: Поддержка Expert Parallelism до EP2048.
- Экспериментальные функции: Pipeline Parallelism (PP), Context Parallelism (CP) и удаленный доступ к памяти (Engram) работают с нулевым использованием SM (0 SM), используя RDMA или Copy Engine.
- Требования: Python 3.8+, CUDA 12.3+, PyTorch 2.10+, NCCL 2.30.4+.
Почему это важно
Для разработчиков больших языковых моделей (LLM) DeepEP V2.5 решает главную проблему масштабирования MoE-архитектур — узкое место в коммуникациях между GPU. Снижение потребления SM означает, что больше ресурсов остается непосредственно для вычислений модели, а не для пересылки данных. Это позволяет эффективнее использовать кластеры GPU, особенно в распределенных средах с ограниченной пропускной способностью сети (RDMA), где каждый гигабайт в секунду на счету.
Источник: Github ↗
