Углубленный анализ и профилирование производительности NV-переключателя

Технология графических процессоров NVIDIA, несомненно, ярко проявляется в современном мире высокопроизводительных вычислений. С быстрым развитием искусственного интеллекта и машинного обучения спрос на вычислительную мощность продолжает расти, что делает взаимосвязь между графическими процессорами все более важной. На этом фоне NVIDIA представила протокол NVLink и решение для межпроцессного взаимодействия нескольких графических процессоров, основанное на этой технологии: NV Switch.

В этом разделе рассматривается история разработки, принципы работы и ключевая роль NV Switch в построении высокопроизводительных серверных кластеров, раскрываются загадочные аспекты этой технологии.

Зачем нужен NV-переключатель

Поскольку вычислительные возможности отдельных графических процессоров приближаются к физическим пределам, совместная работа нескольких графических процессоров становится неизбежной тенденцией.

индивидуальные вычислительные возможности графического процессора

Однако для доступа к памяти HBM2 других графических процессоров требуется использование интерфейса PCIe. Как показано на диаграмме выше, традиционные интерфейсы PCIe имеют ограничения по скорости передачи данных и пропускной способности, что часто становится узким местом производительности для связи с графическим процессором. Чтобы преодолеть это ограничение, NVIDIA разработала технологию NVLink, которая обеспечивает в десять раз большую пропускную способность, чем PCIe. Это позволяет восьми графическим процессорам на одном сервере соединяться через сети «точка-точка», образуя сетку смешанного куба.

Основное преимущество NVLink заключается в обходе традиционных механизмов распределения и планирования ЦП и обеспечении прямого обмена данными между графическими процессорами. Такая конструкция снижает задержку передачи данных и значительно повышает общую пропускную способность системы. Кроме того, GPC NVlink обеспечивают доступ к данным памяти HBM2 между картами и обеспечивают взаимодействие с данными HBM2 в других графических процессорах.

В системах с несколькими графическими процессорами NVLINK также выполняет функцию XBAR, выступая в качестве моста между различными графическими процессорами, обеспечивая свободный поток данных. Он умело избегает конфликтов с шиной PCIe, позволяя NVLink и PCIe сосуществовать как взаимодополняющие решения, вместе обеспечивая необходимые возможности передачи данных для системы.

NV Switch опирается на эту основу, поддерживая полностью неблокирующие, полностью взаимосвязанные системы графических процессоров. Предоставляя больше интерфейсов NVLink без каких-либо промежуточных переходов графического процессора, он обеспечивает более масштабное взаимодействие графических процессоров, что приводит к созданию более мощных вычислительных кластеров.

В технологической эволюции NVIDIA архитектура Pascal впервые представила NVLink, что значительно повысило эффективность связи графического процессора за счет создания высокоскоростного канала. Однако настоящий скачок произошел в архитектуре Volta следующего поколения, сопровождавшейся рождением NVSwitch.

NVSwitch действует как интеллектуальный концентратор в сети передачи данных, поддерживая дополнительные каналы NVLink и обеспечивая полную взаимосвязь между несколькими графическими процессорами. Это значительно оптимизирует эффективность и гибкость обмена данными.

полная взаимосвязь между несколькими графическими процессорами

Как показано на рисунке, архитектура Volta достигла скорости обмена данными между графическими процессорами 300 ГБ/с, а архитектура Hopper достигла скорости 900 ГБ/с. За этим достижением стоит значительное увеличение количества каналов NVLink: с 6 в Volta до 18 в Hopper. Это похоже на добавление эстакад и кольцевых развязок к исходной магистрали, обеспечивая более эффективный поток данных между графическими процессорами и обеспечивая надежную поддержку высокопроизводительных вычислений и крупномасштабной параллельной обработки.

Архитектура Volta достигла связи 300G

На диаграмме выше показана архитектура межсоединений графических процессоров на серверах DGX. В DGX-1 P100 имеется 8 карт графических процессоров, каждая из которых поддерживает 4 канала NVLink, обеспечивающие высокоскоростную связь между графическими процессорами. Эти графические процессоры организованы в две сетки кубов, каждый из которых содержит 4 графических процессора (GPU 0–3 и GPU 4–7). Внутри каждого куба графические процессоры могут взаимодействовать напрямую через NVLink или через коммутатор PCIe. Однако связь между кубами (например, между графическим процессором 0 и графическим процессором 4) требует непрямой маршрутизации через другие графические процессоры.

В DGX-2 реализована технология NVIDIA NVSwitch первого поколения, значительное достижение, обеспечивающее более эффективную связь между графическими процессорами. В архитектуре Volta каждая видеокарта поддерживает 6 каналов NVLink (вместо 4). Кроме того, за счет включения 6 NVSwitches DGX-2 соединяет все графические процессоры на сервере, обеспечивая одновременную связь между 8 парами графических процессоров без промежуточных переходов. Эта прямая высокоскоростная связь значительно повышает эффективность передачи данных и общую производительность вычислений.

В DGX-A100 используется технология NVSwitch второго поколения. По сравнению с первым поколением, NVSwitch второго поколения обеспечивает более высокую пропускную способность связи и меньшую задержку. В архитектуре A100 каждая карта графического процессора поддерживает 12 каналов NVLink (третьего поколения), а 6 NVSwitch создают полносвязную топологию сети. Хотя стандартная конфигурация DGX A100 включает только 8 графических карт, систему можно расширить для поддержки большего количества графических процессоров A100 и NVSwitch для крупномасштабных суперкомпьютеров.

В DGX-H100 используются технологии NVSwitch третьего поколения и NVLink четвертого поколения. Каждая карта графического процессора поддерживает 18 каналов NVLink. В архитектуре H100 представлены 4 NVSwitch с использованием многоуровневой топологии: каждая карта подключается к первому NVSwitch с 5 каналами, ко второму NVSwitch с 4 каналами, к третьему NVSwitch с 4 каналами и четвертому NVSwitch с 5 каналами. В результате всего 72 канала NVLink обеспечивают пропускную способность двунаправленной сети NVLink 3.6 ТБ/с, что в 1.5 раза больше, чем в предыдущем поколении.

Первоначальный дизайн NVSwitch был направлен на создание полностью разблокированной и полностью взаимосвязанной системы графических процессоров для крупномасштабной параллельной обработки. В первом поколении NVSwitch поддерживал 18 интерфейсов, позволяя полностью соединить до 16 графических процессоров для эффективного обмена данными и связи.

Как показано на схеме архитектуры V100, каждый графический процессор имеет 6 каналов NVLink, которые подключаются к NVSwitch, образуя сеть связи с высокой пропускной способностью. В системе DGX-2 8 графических процессоров V100 подключены к 6 коммутаторам NVSwitch через эти каналы NVLink, образуя мощную магистраль.

Графический процессор V100

Как показано на схеме выше, в архитектуре V100 каждый графический процессор имеет 6 каналов NVLink, которые могут подключаться к NVSwitch, образуя сеть связи с высокой пропускной способностью. В системе DGX-2 8 графических процессоров V100 подключены к 6 коммутаторам NVSwitch через каналы NVLink, образуя мощную магистраль.

NVLink

NVSwitch первого поколения поддерживает технологию NVLink 2.0, при этом каждый интерфейс обеспечивает два канала и пропускную способность до 50 ГБ/с. Это означает, что благодаря NVSwitch вся система достигает впечатляющей общей пропускной способности 900 ГБ/с, что значительно повышает скорость передачи данных и эффективность вычислений.

Кроме того, NVSwitch производится с использованием 12-нм техпроцесса FinFET FFN компании TSMC, что позволяет ему работать при мощности 100 Вт при интеграции до 200 миллионов транзисторов.

Что касается схемы ввода-вывода и упаковки, NVSwitch упакован в большой чип BGA с 1940 контактами, из которых 576 специально предназначены для поддержки 18 каналов NVLink. Остальные контакты управляют питанием и различными интерфейсами ввода-вывода, включая порты управления x4 PCIe, I2C, GPIO, обеспечивая гибкое управление и возможности расширения системы.

Конкретные параметры показаны в таблице ниже:

параметр nvSwitch

Двунаправленная полоса пропускания NVLink До 50 ГБ/с

Фактическая загрузка До 80%

Блок переключателей НВ

Блок переключателей НВ

Начальный блок NVSwitch, как показано на рисунке, включает графический процессор XBAR слева. Это узкоспециализированное мостовое устройство, разработанное для сред межсоединений NVLink, позволяющее пакетам данных передаваться и обмениваться данными между несколькими графическими процессорами, одновременно представляя их внешне как один графический процессор. Благодаря GPU XBAR клиентские приложения могут использовать коллективную производительность нескольких графических процессоров, что снижает сложность управления связью между графическими процессорами на стороне клиента.

Кроме того, графический процессор XBAR использует технологию буферизации на основе статической оперативной памяти (SRAM) для обеспечения неблокирующей передачи данных. Этот механизм буферизации обеспечивает непрерывность и эффективность даже при высоких нагрузках.

Начиная с графического процессора V100, NVIDIA повторно использовала IP-блоки NVLink и конструкцию XBAR, гарантируя совместимость между продуктами разных поколений и обеспечивая непрерывную итерацию и оптимизацию технологии NVLink, одновременно сокращая затраты и время на разработку.

Физическая адресация nvswitch

На диаграмме также показано, как NVSwitch и графические процессоры распределяют и передают данные по всему графическому процессору. В программировании разработчики обычно имеют дело с виртуальными адресами, управляемыми и абстрагируемыми операционной системой, обеспечивая независимые адресные пространства для различных программ. Однако данные физически хранятся с использованием физических адресов в памяти. Эти физические адреса напрямую указывают на определенные места в памяти, образуя основу для доступа к данным. При передаче данных через NVLink, как показано на схеме, вместо виртуальных адресов используются физические адреса. Этот выбор ускоряет индексацию данных и скорость доступа.

NVSwitch, как мостовое устройство для NVLink, не только обеспечивает канал связи с высокой пропускной способностью, но также управляет сложными механизмами маршрутизации и буферизации, чтобы гарантировать точную и быструю передачу пакетов данных к месту назначения на основе правильного физического адреса. Использование физических адресов для связи NVLink снижает необходимость трансляции адресов на целевом графическом процессоре, тем самым снижая задержку и повышая скорость передачи данных. Это крайне важно для высокопроизводительных вычислений и приложений искусственного интеллекта, требующих быстрой обработки больших объемов данных.

NVSwitch: принципы и возможности упрощения

банда

В конфигурациях без NVSwitch прямые соединения между графическими процессорами обычно включают объединение NVLink в несколько групп (называемых «группами»). В этой настройке несколько графических процессоров обмениваются данными через общие каналы NVLink. Однако ограничением этого подхода является то, что максимальная пропускная способность между любыми двумя графическими процессорами ограничена количеством NVLink и пропускной способностью в их соответствующих группах.

V100

Внедрение NVSwitch и его усовершенствования Технология NVSwitch от NVIDIA совершает революцию в области связи между графическими процессорами. Будучи высокоскоростным коммутатором, NVSwitch обеспечивает взаимодействие данных по всем каналам.

В архитектуре NVSwitch любая пара графических процессоров может напрямую соединяться между собой, и до тех пор, пока общая пропускная способность шести каналов NVLink не будет превышена, трафик отдельных графических процессоров будет передаваться без блокировки. Это означает, что полностью взаимосвязанная архитектура, поддерживаемая NVSwitch, позволяет легко масштабировать систему для размещения большего количества графических процессоров без ущерба для производительности. Каждый графический процессор может использовать высокую пропускную способность, обеспечиваемую NVLink, для быстрого обмена данными.

Преимущества и особенности NVSwitch при соединении нескольких графических процессоров:

Масштабируемость и расширяемость: Внедрение NVSwitch значительно повышает масштабируемость кластеров графических процессоров. Просто добавив больше NVSwitch, система может беспрепятственно поддерживать дополнительные графические процессоры, расширяя вычислительную мощность.

Эффективная конструкция системы: Например, восемь графических процессоров можно эффективно соединить между собой с помощью трех NVSwitch. Такая конструкция позволяет данным свободно перемещаться по всем каналам графического процессора, обеспечивая максимальную гибкость и эффективность циркуляции данных.

Двунаправленное использование полосы пропускания: В этой конфигурации любая пара графических процессоров может использовать для связи полную двунаправленную полосу пропускания 300 Гбит/с. Каждый графический процессор обеспечивает высокоскоростную передачу данных с малой задержкой, что значительно повышает скорость обработки вычислительных задач.

Неблокирующая связь: Перекрестный коммутатор (XBAR) в NVSwitch обеспечивает уникальный путь от точки А к точке Б для передачи данных. Такая конструкция обеспечивает неблокирующую и помехоустойчивую связь, что еще больше повышает надежность передачи данных и общую производительность системы.

Оптимизированная топология сети: NVSwitch поддерживает структуры топологии сети, которые предлагают оптимизированные решения для построения крупномасштабных кластеров GPU. Разработчики систем могут гибко настраивать соединения GPU-GPU на основе конкретных вычислительных требований.

NVSwitch третьего поколения

NVSwitch третьего поколения

Как показано на схеме, NVSwitch третьего поколения производится по технологии TSMC 4N. Несмотря на большое количество транзисторов и высокую пропускную способность, он сохраняет относительно низкое энергопотребление. Он оснащен 64 портами связи NVLink 4, что позволяет создавать сложные сети, содержащие множество графических процессоров, сохраняя при этом высокоскоростную связь между каждым графическим процессором. Кроме того, он поддерживает двунаправленную пропускную способность 3.2 ТБ/с, что значительно повышает скорость передачи данных и делает крупномасштабную параллельную обработку наборов данных более эффективной.

Помимо подключения нескольких карт графического процессора внутри сервера, NVSwitch третьего поколения также может расширяться для подключения внешних серверов графического процессора, образуя полноценные высокоскоростные кластеры графических процессоров. Физический коммутатор, состоящий из чипов NVSwitch третьего поколения, может создавать кластеры, содержащие до 256 графических процессоров H100, обеспечивая общую пропускную способность 57.6 ТБ/с.

Что касается технологии передачи сигналов, то здесь используется передача сигналов PAM50 со скоростью 4 Гбод, при этом каждая дифференциальная пара обеспечивает полосу пропускания 100 Гбит/с, обеспечивая высокую скорость передачи и низкую задержку.

NVSwitch интегрирует технологию NVIDIA SHARP, включая такие операции, как all_gather, уменьшить_scatter и атомарную рассылку, ускоряя взаимодействие кластеров и еще больше повышая производительность. Физический электрический интерфейс NVSwitch 3.0 совместим с Ethernet 400 Гбит/с и InfiniBand, обеспечивая совместимость с существующими сетевыми технологиями.

логика порта

NVSwitch третьего поколения от NVIDIA представляет несколько инновационных функций. Включение нового модуля SHARP и модуля NVLink значительно повышает эффективность связи и обработки данных между графическими процессорами, как показано на схеме.

Новый модуль SHARP

Недавно представленный модуль SHARP действует как интеллектуальный проводник, управляющий симфонией данных благодаря своим мощным возможностям обработки. Он поддерживает различные операторы, от логических до арифметических операций, и совместим с несколькими форматами данных, такими как FP16 и BF16, обеспечивая надежную поддержку рабочих нагрузок искусственного интеллекта и машинного обучения. Конструкция контроллера SHARP позволяет параллельно управлять до 128 группами SHARP, подобно многозадачному тысячерукому божеству, что значительно повышает эффективность параллельной обработки данных.

Перекрестный переключатель (XBAR) в составе NVSwitch, тщательно настроенный и оптимизированный, идеально соответствует требованиям передачи данных модуля SHARP. Такая совместная разработка обеспечивает эффективную передачу данных между графическими процессорами с малой задержкой, повышая общую производительность системы, как скачущего коня.

Новый модуль NVLink

Встроенный новый модуль NVLink не только обеспечивает дополнительную защиту данных и чипов, выступая в качестве надежного щита от несанкционированного доступа и потенциальных утечек данных, но также повышает безопасность данных. Внедрение разделения портов, подобно стратегическому шахматному ходу, изолирует разные порты в отдельные сети NVLink, обеспечивая большую гибкость логического разделения ресурсов между разными сетями и оптимизируя возможности многозадачности.

Поддержка кабелей Octal Small Formfactor Pluggable (OSFP) следующего поколения обеспечивает надежную основу для будущего расширения сети. Эти кабели обеспечивают более высокую скорость передачи данных и меньшее затухание сигнала, что делает их пригодными для высокоскоростной связи на большие расстояния и обеспечивает безграничные возможности для масштабируемости сети.

Новый модуль NVLink также расширяет возможности телеметрии, позволяя системным администраторам точно отслеживать и оптимизировать производительность сети, обеспечивая стабильную работу системы. Встроенная технология прямого исправления ошибок (FEC) действует как бдительный страж, повышая надежность передачи данных, особенно в условиях затухания сигнала или помех, гарантируя целостность и точность данных.

Когда графические процессоры H100 используют сеть NVLink, насколько они быстрее по сравнению с графическими процессорами A100 с сетью IB? Давайте сравним пропускную способность DGX A100 256 POD и DGX H100 256 POD:

Сравнение сетей InfiniBand (IB) и NVLink для графических процессоров H100

Внутренняя пропускная способность DGX A100:

Каждый DGX A100: 8/2 * 600 ГБ/с = 2400 ГБ/с.

На 32 процессорах DGX A100 (256 графических процессоров A100) при условии наличия 8 сетевых карт HDR 200 Гбит/с на каждый сервер и коэффициента конвергенции коммутатора TOR 4:1:

Общая пропускная способность = 256/2/4 * 200 ГБ/с = 6400 ГБ/с.

Внутренняя пропускная способность DGX H100:

Каждый DGX H100: 8/2 * 900 ГБ/с = 3600 ГБ/с.

На 32 процессорах DGX H100 (256 графических процессоров H100) с коэффициентом сходимости 2:1:

Общая пропускная способность = 256/2/2 * 900 ГБ/с = 57600 ГБ/с.

По сравнению с DGX A100 одиночный DGX H100 обеспечивает увеличение пропускной способности в 1.5 раза и двунаправленной пропускной способности в 3 раза. Используя 32 DGX H100, пропускную способность на полосу можно увеличить в 9 раз, а двунаправленную полосу пропускания можно увеличить в 4.5 раза.

нейронный рекомендательный механизм

Резюме

В сегодняшнюю эпоху, основанную на данных, спрос на высокопроизводительные вычисления продолжает расширять технологические границы. Технология NVIDIA NVSwitch, служащая мостом связи между графическими процессорами, играет решающую роль в создании эффективных вычислительных кластеров. С момента создания первого NVSwitch до инноваций третьего поколения неустанное стремление NVIDIA к повышению вычислительной эффективности очевидно. NVSwitch не только увеличивает пропускную способность и скорость передачи данных, но также усиливает возможности обработки данных и безопасность системы с помощью модулей SHARP и NVLink. Его присутствие позволяет системам с несколькими графическими процессорами более эффективно взаимодействовать, обеспечивая надежную поддержку таких областей, как искусственный интеллект, машинное обучение и анализ больших данных. По мере развития технологий NVSwitch будет оставаться ключевым элементом рынка высокопроизводительных вычислений, символизируя инновации NVIDIA и стимулируя прогресс отрасли. Руководствуясь NVSwitch, мы ожидаем более разумное, эффективное и взаимосвязанное будущее.

Оставьте комментарий

Наверх