Что такое DeepEP?
DeepEP предназначен для операций распределения и слияния MoE и поддерживает операции низкой точности, включая FP8. В то же время DeepEP специально оптимизирован для алгоритма группового ограничения, предложенного в документе DeepSeek-V3, и предоставляет ряд высокопроизводительных ядер для асимметричной пересылки пропускной способности доменов (например, из доменов NVLink в домены RDMA). Эти ядра не только обладают высокой пропускной способностью для задач обучения и предварительного наполнения выводов, но и поддерживают управление количеством потоковых мультипроцессоров (SM). Для сценариев декодирования выводов, чувствительных к задержкам, DeepEP включает набор чистых ядер RDMA с низкой задержкой для минимизации задержек. Кроме того, в библиотеке реализован подход перекрытия коммуникаций и вычислений на основе крючков, который не потребляет никаких ресурсов SM, что еще больше повышает эффективность.
Что такое модель смешанной экспертизы (MoE)?
Гибридная экспертная модель - это нейросетевая архитектура, объединяющая несколько "экспертных" сетей, при этом "закрытая" сеть решает, к каким экспертам направить входные данные. Такая архитектура позволяет модели значительно увеличиваться в размерах, оставаясь при этом вычислительно эффективной, поскольку одновременно активируются только некоторые из экспертов, а не все сети. Концепция MoE была впервые предложена Джейкобсом, Джорданом и Хинтоном в 1991 году, но до последних лет она не находила широкого применения в крупномасштабном моделировании языка. Архитектура MoE используется в Switch Transformers от Google, Z-Code от Microsoft и DeepSeek-V3 от DeepSeek, что позволяет проводить обучение и развертывание более масштабных моделей за счет разреженной активации экспертов.
Производительность DeepEP
Обычные ядра с NVLink и пересылкой RDMA
Мы тестируем обычные ядра на H800 (максимальная пропускная способность NVLink ~160 Гб/с), каждое из которых подключено к сетевой карте CX7 InfiniBand 400 Гб/с RDMA (максимальная пропускная способность ~50 Гб/с). Мы используем настройки предварительного обучения DeepSeek-V3/R1 (4096 токенов на партию, 7168 скрытых, топ-4 группы, топ-8 экспертов, диспетчеризация FP8 и объединение BF16).
Тип |
Диспетчер #EP |
Узкое место пропускной способности |
Комбинезон #EP |
Узкое место пропускной способности |
Внутриузловой |
8 |
153 ГБ/с (NVLink) |
8 |
158 ГБ/с (NVLink) |
Междоузлия |
16 |
43 ГБ/с (RDMA) |
16 |
43 ГБ/с (RDMA) |
Междоузлия |
32 |
44 ГБ/с (RDMA) |
32 |
47 ГБ/с (RDMA) |
Междоузлия |
64 |
46 ГБ/с (RDMA) |
64 |
45 ГБ/с (RDMA) |
Ядра с низкой задержкой и чистым RDMA
Мы тестируем ядра с низкой задержкой на H800, каждый из которых подключен к сетевой карте CX7 InfiniBand 400 Гбит/с RDMA (максимальная пропускная способность ~50 ГБ/с). Мы используем типичные производственные настройки DeepSeek-V3/R1 (128 токенов на партию, 7168 скрытых, топ-8 экспертов, диспетчеризация FP8 и объединение BF16).
Диспетчер #EP |
Латентность |
Пропускная способность RDMA |
Комбинезон #EP |
Латентность |
Пропускная способность RDMA |
8 |
163 мы |
46 ГБ/с |
8 |
318 мы |
46 ГБ/с |
16 |
173 мы |
43 ГБ/с |
16 |
329 мы |
44 ГБ/с |
32 |
182 мы |
41 ГБ/с |
32 |
350 мы |
41 ГБ/с |
64 |
186 нас |
40 ГБ/с |
64 |
353 нас |
41 ГБ/с |
128 |
192 мы |
39 ГБ/с |
128 |
369 мы |
39 ГБ/с |
256 |
194 мы |
39 ГБ/с |
256 |
360 мы |
40 ГБ/с |