Сети и протоколы
Фабрика дата-центра
Задача GPU-тренировки, которая должна занимать 6 часов, идёт 18. GPU простаивают 90% времени, ожидая. С моделью или кодом всё в порядке — узкое место в фабрике дата-центра, физической сети коммутаторов и оптики, которая переносит градиенты между машинами.
Топология Clos: spine и leaf
Классическая двух- или трёхуровневая сеть Clos заменяет один большой коммутатор — единую точку отказа и кошмар hardware-инженерии — сеткой commodity-коммутаторов. В дизайне spine-leaf каждый top-of-rack (ToR) leaf-коммутатор имеет один аплинк к каждому spine-коммутатору. Два leaf-коммутатора не соединены напрямую; весь трафик проходит через spine.
Это даёт три вещи сразу. Несжимаемая bisection bandwidth: если N leaf и M spine, и каждый leaf имеет один M-скоростной аплинк к каждому spine, то при делении фабрики пополам каждая сторона имеет N/2 × M аплинков — любой сервер может насытить свой NIC к любому другому одновременно. Никаких spanning-tree петель: ECMP (Equal-Cost Multi-Path) хеширует 5-tuple каждого потока по доступным spine-аплинкам, все пути активны одновременно. Горизонтальное масштабирование: добавьте spine для расширения bisection bandwidth; добавьте leaf для расширения серверных портов.
Современные гиперскейловые фабрики используют 400G Ethernet между leaf и spine, а в передовых сборках уже 800G (IEEE 802.3df, утверждён в феврале 2024). Аплинки — Direct Attach Copper (DAC) внутри стойки и заранее терминированные MTP/MPO многоволоконные магистральные кабели между стойками и рядами.
- Скорость spine↔leaf (2024)
- 400G Ethernet; 800G в передовых сборках
- Серверный NIC (GPU-кластер)
- 100–400 Гбит/с RDMA NIC
- Цель oversubscription (AI-обучение)
- 1:1 (полная bisection bandwidth)
- Риск PFC pause storm (RoCE)
- замораживает регион фабрики при неверной настройке
- Потребление GPU-стойки
- 50–100 кВт (потолок воздушного охлаждения ~15 кВт)
- Стандарт 800G Ethernet
- IEEE 802.3df, утверждён февраль 2024
RoCE и lossless Ethernet
Обучение GPU требует коллективной коммуникации — каждый узел должен обмениваться обновлениями градиентов с каждым другим в операциях вроде AllReduce. При обычном TCP ядро копирует данные: GPU → CPU → NIC → сеть → NIC → CPU → GPU. Двойное копирование сжигает циклы CPU и добавляет задержку, сериализуя коллектив и вынуждая GPU простаивать.
RDMA (Remote Direct Memory Access) позволяет NIC записывать напрямую в память удалённой машины без участия CPU и без копирования. Над InfiniBand это был стандарт; над стандартным Ethernet это стало RoCE (RDMA over Converged Ethernet). Проблема: RDMA не имеет встроенной повторной передачи. Один потерянный пакет стопорит или прерывает операцию RDMA, поэтому фабрика должна быть без потерь.
Два механизма делают Ethernet без потерь:
- PFC (Priority Flow Control) — когда буфер коммутатора заполняется сверх порога, он отправляет PAUSE-кадр upstream на основе traffic-class, применяя backpressure до самого отправителя. Пакет не теряется; порт отправителя блокируется.
- ECN (Explicit Congestion Notification) — при росте очереди коммутатор маркирует пакеты битом перегрузки (вместо отбрасывания). Получатель отражает метку обратно к отправителю (DCQCN в RoCE v2), который снижает скорость до того, как PFC вступает в действие.
Lossless Ethernet не автоматический — требует точной настройки per-port, per-priority flow-control параметров. Агрессивный PFC создаёт pause storms (backpressure распространяется по фабрике, замораживая несвязанные потоки) или deadlock (циклическая зависимость заблокированных портов). Поэтому GPU-кластеры обычно на физически изолированной lossless-фабрике, отдельной от общей IP-сети.
Почему это работает
Почему существуют SmartNIC и DPU. При 400 Гбит/с хост-CPU больше не справляется с обработкой пакетов для виртуализированных тенантов — NIC один может генерировать больше прерываний, чем CPU обработает. Решение — полностью вынести работу с хоста. SmartNIC (например, NVIDIA ConnectX-7) обрабатывает SR-IOV, VXLAN encap/decap и traffic policing в кремнии NIC. DPU (Data Processing Unit, например, AWS Nitro, NVIDIA BlueField) идёт дальше: запускает полноценную ОС на ARM-ядре внутри NIC, берёт на себя весь стек VM-сети — security groups, VPC-маршрутизацию, зашифрованный overlay — с нулём CPU-циклов от тенанта. AWS Nitro выносит весь I/O сети и хранилища с хост-CPU, отдавая тенантам 100% оплаченного CPU.
Питание и охлаждение: реальный потолок
Стандартная 42U-стойка с 1U-серверами потребляет 5–15 кВт. Стойка с восемью GPU H100 потребляет 50–100 кВт. Воздушное охлаждение обрабатывает примерно 15 кВт на стойку (конверт ASHRAE Class A2). Стойка 100 кВт требует жидкостного охлаждения.
Доминируют два подхода. Direct-to-chip (DtC) проводит хладагент через холодные пластины, прикреплённые напрямую к кристаллу GPU и регуляторам напряжения. Воздух всё ещё обрабатывает оставшиеся ~20% тепла стойки (накопители, NIC, вентиляторы). Полное погружение погружает серверные платы в диэлектрическую жидкость (инженерное масло или фторуглерод). Погружение обрабатывает 100% тепла стойки без вентиляторов.
Жёсткое ограничение для новых GPU-развёртываний — часто не порты коммутаторов или оптика, а мощность питания. Зал дата-центра, рассчитанный на 10 кВт/стойку, уже оплачен в HVAC и PDU; дооснащение под 100 кВт/стойку означает замену питания, контуров охлаждения и, возможно, трансформатора здания. Поэтому гиперскейлеры теперь покупают или строят объекты специально для GPU-плотности с нуля.
Распределённая задача обучения на 64 GPU (8 серверов × 8 GPU) выполняется в 3× медленнее, чем ожидается. Диагностируй узкое место фабрики.
Здоровье фабрики: диагностика leaf-аплинка
Спроектируй non-blocking фабрику на 512 GPU для AI-кластера. Серверы имеют 400 Гбит/с RoCE NIC.
- Clos spine-leaf с ECMP для non-blocking bisection bandwidth.
- Lossless Ethernet (PFC + ECN) обязателен для RoCE.
- Жидкостное охлаждение обязательно выше потолка ~15 кВт/стойка для воздуха.
- Заранее терминированные MTP/MPO кабели для скорости и удобства обслуживания.
- Питание рассчитано под потребление GPU во избежание stranded capacity.
- Per-port мониторинг оптической мощности и BER выявляет деградацию раньше аварии.
Коэффициент oversubscription фабрики
1/3- 01Что такое non-blocking bisection bandwidth в Clos-фабрике, и как ECMP его обеспечивает?
- 02Почему RoCE требует lossless Ethernet и какие два механизма его обеспечивают?
- 03Почему мощность питания и охлаждение теперь ограничивающий фактор для GPU-развёртываний в дата-центре?
Гиперскейловая фабрика дата-центра — это Clos spine-leaf mesh: каждый top-of-rack leaf имеет по одному аплинку к каждому spine, и ECMP хеширует потоки по этим аплинкам для non-blocking bisection bandwidth — 400G/800G оптика в spine, 100–400G к серверам. GPU-кластеры используют RoCE для записи напрямую в удалённую память без копирования через ядро, что требует lossless Ethernet через PFC и ECN; неверная настройка flow control создаёт pause storm, замораживающий фабрику. Плоскость данных всё активнее уходит с хост-CPU в SmartNIC и DPU — AWS Nitro полностью выносит VM-сеть. 800G Ethernet (IEEE 802.3df) доступен сегодня, но обязывающее ограничение теперь — питание: 50–100 кВт GPU-стойки требуют жидкостного охлаждения и достаточно выделенной мощности, чтобы ёмкость не была stranded.