NVIDIA NVLink
Что такое NVLink и какие проблемы он решает?
[dnf_block term=»NVLink» ]это специализированная высокоскоростная межсоединительная шина, разработанная NVIDIA для прямого обмена данными между графическими ускорителями и, в отдельных конфигурациях, между GPU и CPU. Технология появилась как ответ на ограничения PCIe, которые в задачах HPC и ИИ стали узким местом при передаче больших массивов данных.[/dnf_block]В отличие от классического PCIe, NVLink обеспечивает кратно большую пропускную способность и более низкие задержки, а также поддерживает формирование общего адресного пространства памяти. Это позволяет нескольким GPU обращаться к памяти друг друга почти как к собственной, что особенно важно при обучении крупных моделей, работе с распределёнными батчами и масштабировании вычислений внутри одного сервера.
Принцип работы и архитектура NVLink
NVLink — это последовательная шина с дифференциальной передачей сигналов. Данные передаются по линиям, объединённым в каналы, которые формируют отдельные интерфейсы NVLink. В первой версии NVLink 1.0 использовалось 8 пар линий на один такой интерфейс со скоростью 20 Гбит/с на пару, что обеспечивало до 160 ГБ/с совокупной пропускной способности на один GPU в архитектуре Pascal.
По мере роста числа ускорителей прямое соединение «каждый с каждым» стало физически сложным. Для этого NVIDIA разработала NVSwitch — специализированный коммутатор, формирующий внутри сервера или стойки единую коммутационную фабрику. NVSwitch обеспечивает топологию all-to-all: каждый GPU получает равноправный доступ к памяти остальных без каскадных задержек. Это критично для когерентности кеша и синхронизации потоков при параллельных вычислениях.
Эволюция стандарта NVLink (от 1.0 до 5.0)
С момента выхода NVLink 1.0 в поколении Pascal пропускная способность росла кратно. В Volta и Ampere увеличилось число линий и скорость передачи, а с появлением NVSwitch второго и третьего поколений стало возможно объединять десятки GPU в одном логическом домене. NVLink 5.0 в архитектуре Blackwell доводит пропускную способность до 1800 ГБ/с на один GPU и позволяет строить конфигурации NVL72 — до 72 ускорителей в едином пространстве с агрегированной полосой порядка 130 ТБ/с. По сути, это масштабирование от связки из нескольких карт к кластеру, который для приложения выглядит как единый ускоритель.
[table id=»139″ ] [tr][cell th=»on»]Поколение[/cell] [cell th=»on»]Архитектура[/cell] [cell th=»on»]Пропускная способность на GPU[/cell] [cell th=»on»]Особенности[/cell][/tr] [tr][cell]1.0[/cell] [cell]Pascal[/cell] [cell]160 ГБ/с[/cell] [cell]Первое внедрение NVLink[/cell][/tr] [tr][cell]2.0[/cell] [cell]Volta[/cell] [cell]300 ГБ/с[/cell] [cell]Улучшенная когерентность памяти[/cell][/tr] [tr][cell]3.0[/cell] [cell]Ampere[/cell] [cell]600 ГБ/с[/cell] [cell]NVSwitch 2[/cell][/tr] [tr][cell]4.0[/cell] [cell]Hopper[/cell] [cell]900 ГБ/с[/cell] [cell]NVLink 4, NVSwitch 3[/cell][/tr] [tr][cell]5.0[/cell] [cell]Blackwell[/cell] [cell]1800 ГБ/с[/cell] [cell]NVLink 5, NVL72 (72 GPU)[/cell][/tr] [tcaption]Табл. 1 — Эволюция NVLink
[/tcaption][/table]Основные сферы применения NVLink
В научных вычислениях NVLink используется в задачах, чувствительных к обмену промежуточными результатами: расчет БПФ (FFT), молекулярная динамика в пакетах вроде AMBER, моделирование климата. Здесь время передачи данных между GPU напрямую влияет на итоговую производительность.
В ИИ NVLink стал основой для обучения крупных моделей, включая LLM. При тензорном параллелизме слои нейросети распределяются между несколькими GPU, и на каждом шаге требуется обмен активациями и градиентами. Если передача идет через PCIe или сетевой адаптер, задержки быстро накапливаются. NVLink снижает эти накладные расходы и делает масштабирование внутри узла предсказуемым.
Отличия NVLink от SLI и преимущества для параллельных вычислений
SLI создавался для игровых систем и строился вокруг чередования кадров (AFR), где каждая видеокарта рендерила свой кадр. Обмен данными был минимальным, а память не объединялась. С уходом multi-GPU из массового гейминга SLI утратил актуальность.
NVLink ориентирован на профессиональные вычисления. Он поддерживает объединение памяти и механизмы когерентности, благодаря которым несколько GPU могут работать с общими структурами данных. Это принципиально иной уровень интеграции: ускорители выступают как части единой вычислительной системы, а не как независимые устройства.
[table id=»665″ ] [tr][cell th=»on»]Параметр[/cell] [cell th=»on»]PCIe[/cell] [cell th=»on»]SLI[/cell] [cell th=»on»]NVLink[/cell][/tr] [tr][cell]Назначение[/cell] [cell]Универсальный интерфейс[/cell] [cell]Игры[/cell] [cell]HPC и AI[/cell][/tr] [tr][cell]Объединение памяти[/cell] [cell]Нет[/cell] [cell]Нет[/cell] [cell]Да[/cell][/tr] [tr][cell]Когерентность[/cell] [cell]Нет[/cell] [cell]Нет[/cell] [cell]Да[/cell][/tr] [tr][cell]Масштабирование[/cell] [cell]Ограничено[/cell] [cell]Практически отсутствует[/cell] [cell]До 72 GPU[/cell][/tr] [tcaption]Табл. 2 — Сравнительная таблица: NVLink vs SLI vs PCIe
[/tcaption][/table]NVLink в ИИ-серверах ITPOD
В ИИ-серверах NVLink отвечает за масштабирование внутри одного узла, обеспечивая высокоскоростной обмен данными между GPU и прямой доступ к памяти друг друга (peer-to-peer). Это критично при обучении LLM и других распределённых нагрузках, где требуется постоянная синхронизация активаций и градиентов. При использовании NVSwitch формируется внутренняя коммутационная фабрика с равномерной латентностью между всеми ускорителями — без «узких мест» при росте числа GPU.
В архитектуре ITPOD NVLink дополняет, а не заменяет PCIe: PCIe обеспечивает связь CPU ↔ GPU и подключение NVMe, а NVLink ускоряет GPU ↔ GPU внутри узла. Правильная топология (поколение NVLink, наличие NVSwitch, распределение PCIe-линий CPU) напрямую определяет, насколько эффективно система будет масштабироваться под реальные AI-нагрузки, а не только «по количеству карт в корпусе».