NFS RDMA: от базовых принципов до вариантов использования с ИИ
#AI #GDS #GPU #NFS #RDMA #TCP
8 минут
NFS RDMA: от базовых принципов до вариантов использования с ИИ

NFS RDMA: от базовых принципов до вариантов использования с ИИ

NFS (Network File System) — это файловый протокол поверх IP (чаще TCP), через который СХД публикует каталоги, а клиенты монтируют их и работают с файлами как с локальными.
Как это выглядит по шагам:

  1. На СХД включается экспорт нужного каталога (указываются права доступа).
  2. Клиент монтирует экспорт (например, в /mnt/data).
  3. Приложения читают/пишут обычные файлы, а NFS прозрачно передаёт операции по сети, обеспечивая файловую семантику (права, блокировки, метаданные и т. п.).

Что такое RDMA и как устроен NFS over RDMA?

RDMA (Remote Direct Memory Access) позволяет передавать данные напрямую «память↔память» между клиентом и СХД, практически без участия CPU и обходя лишние копии.
В связке NFS over RDMA:

    1. те же файловые операции NFS (открыть/читать/писать/блокировки/права);
    2. транспорт — RDMA: вызовы NFS (RPC) и сами данные кладутся сразу в нужные буферы на обеих сторонах (за это отвечают RDMA-карты, RNIC);
    3. доступ к дискам по-прежнему выполняет контроллер СХД.Итог: ниже задержка, выше полезная полоса и ниже нагрузка на CPU — при неизменной файловой семантике.

NFS RDMA: от базовых принципов до вариантов использования с ИИ - 1

Сравнительная таблица NFS c RDMA и без

На примере тестов Dell источник PowerScale OneFS: NFS over RDMA for Media

СХД / Платформа Сеть Нагрузка (тест) NFS/TCP (MB/s) NFS/RDMA (MB/s) Прирост
Dell PowerScale F600 (OneFS 9.2) 100 GbE RoCEv2 50 MB, write 2100 4500 2.14×
Dell PowerScale F600 100 GbE RoCEv2 50 MB, read 1930 4600 2.38×
Dell PowerScale F600 100 GbE RoCEv2 190 MB, write 2200 4700 2.14×
Dell PowerScale F600 100 GbE RoCEv2 190 MB, read 1950 4999 2.56×
Dell PowerScale F800 (OneFS 9.2) 40 GbE RoCEv2 50 MB, write 2650 2940 1.11×
Dell PowerScale F800 40 GbE RoCEv2 50 MB, read 1750 4334 2.48×
Dell PowerScale F800 40 GbE RoCEv2 190 MB, write 2550 2846 1.12×
Dell PowerScale F800 40 GbE RoCEv2 190 MB, read 1790 4650 2.60×

На стендах СХД (PowerScale) NFS over RDMA даёт от +10% до 2.6× в зависимости от профиля (write/read, размер кадра/блока и полосы сети)

 

NFS over RDMA + GPU

NFS over RDMA + NVIDIA GPUDirect Storage (GDS): данные идут NIC ↔ память GPU в обход CPU-RAM. Важно правильно связать GPU и RNIC по NUMA/PCIe (иначе часть выигрыша теряется).
Эффект: меньше копирований и системных вызовов → ниже latency и нагрузка на CPU, выше сквозная полоса и утилизация GPU.

Как работает доступ к GPU?

1) NFS over TCP
Путь: Storage → NIC → CPU/RAM (копии, системные вызовы) → GPU (cudaMemcpy)
Есть «bounce-buffer» в системной памяти: лишние копии, больше прерываний, выше латентность и нагрузка на CPU. Подходит, но часто «узкое место» при подаче данных к GPU. NVIDIA DeveloperNVIDIA Docs

2) NFS over RDMA
Путь: Storage ⇄ RNIC ⇄ RNIC ⇄ RAM (Direct Data Placement) → GPU (cudaMemcpy)
Транспорт — RDMA: данные кладутся прямо в целевые буферы в RAM клиента, минуя лишние копии и большую часть работы CPU. Затем всё ещё требуется копирование RAM→GPU. Итог — ниже задержка и выше пропускная, чем у TCP. docs.netapp.com

3) NFS over RDMA + GPUDirect Storage (GDS)
Путь: Storage ⇄ RNIC ⇄ GPU memory (DMA)
GDS убирает «bounce-buffer» совсем: RDMA-NIC пишет/читает напрямую из памяти GPU через DMA. Итог — максимальная полоса, минимальные задержки и низкая загрузка CPU. NVIDIA Docs+1

NFS RDMA: от базовых принципов до вариантов использования с ИИ - 2

Вендор / конфигурация Сеть / протокол Нагрузка NFS/RDMA NFS/RDMA+GDS Источник
VAST Data → NVIDIA DGX-2 8×100 Gb HDR IB, NFSoRDMA 1 MiB seq read к GPU ~33 GB/s (через SYSMEM) 90 GB/s NVIDIA GPUDirect Storage (GDS)

NFS/RDMA в связке AI

AI-детекция (NetApp ARP)

NetApp ARP (Autonomous Ransomware Protection) — это встроенная в ONTAP ИИ-детекция вымогателей прямо на уровне СХД. Она в реальном времени наблюдает поведение NFS/SMB/SAN-нагрузок, ловит признаки шифрования и сразу защищает данные «на полке» (без агентов на серверах).

Как это работает — по шагам

  1. Нормализует «обычное» поведение тома/шар: ARP обучается на профиле доступа к данным для каждой защищаемой сущности. Затем отслеживает отклонения.
  2. Смотрит на индикаторы шифрования в онлайне:
  3. рост энтропии (случайности) в записываемых данных;
  4. «ломаные» расширения/типы файлов и потоки массовых переименований;
  5. аномальные пики IOPS/записей (всплески, характерные для шифраторов). 
  6. Реагирует автоматически: при срабатывании ARP делает немедленный Snapshot (неизменяемую точку отката) и поднимает оповещение; восстановление выполняется за секунды/минуты, т.к. снимки в ONTAP — redirect-on-write и «тонкие». 

Результат: подтверждённая независимыми тестами точность ~99% (AAA-рейтинг SE Labs). Для NFS/RDMA это означает меньше простоев и «хвостов» латентности из-за инцидентов.

Ссылки:

ONTAP Autonomous Ransomware Protection

NetApp’s AAA-rated AI-powered ransomware detection

 

Динамический QoS для тренировок ИИ (VAST Data)

Что это: автоматическое «регулирование» потоков I/O на СХД, чтобы «шумные» записи (чекпоинты, ETL) не забивали канал для чтения обучающих данных.

Как работает: задаются политики — чтения датасета получают гарантированный «пол» по скорости/IOPS, тяжёлые записи получают ограничения на пиках. Если чекпоинт «выстрелил», система временно притормаживает его, а не чтения.

Про «хвосты» задержек: это редкие, но большие задержки (p95/p99), из-за которых GPU простаивают. QoS «подрезает хвосты», удерживая задержки в допустимых рамках и сохраняя стабильную загрузку GPU.

Зачем это NFS/RDMA: RDMA лучше всего работает на ровном потоке; QoS делает поток ровным — без провалов, и NFS/RDMA стабильно «кормит» GPU (высокая утилизация, меньше простоев).

Где применяется: практика «дисциплины I/O» у VAST для тренинга моделей (подробные рекомендации по настройкам).

Ссылка: Enforcing I/O Discipline: Using Dynamic QoS to Throttle Checkpoint Ingest and Preserve Model Training Performance

 

Глобальный файловый кэш у вычислений (NetApp FlexCache, в т.ч. write-back)

Что это: «лёгкие» кэши горячих данных непосредственно рядом с GPU-узлами — клиенты NFS читают локально, а не через медленный/дальний WAN.

Как работает:

  • Read: часто читаемые файлы держатся в локальном кэше; повторные чтения идут из него.
  • Write-back: для скорости запись подтверждается кэшем сразу, а на «базу» уходит асинхронно.
  • Когда оправдано: эффект write-back особенно заметен при RTT ≳ ~8 мс между кэшем и «базой» (точный порог зависит от профиля нагрузки). Поддерживается в ONTAP 9.15.1+ и в облачных ONTAP (например, AWS FSx for ONTAP).

Ссылка: ONTAP FlexCache write-back use cases, Replicating your data with FlexCache

 

Экспертное мнение BAUM

  1. Динамический QoS для управления I/O-нагрузкой в AI-тренингах, что обеспечивает стабильную производительность чтения данных и предотвращает простои GPU из-за конкурентных операций записи чекпоинтов 
  2. AI-детекция угроз (например, NetApp ARP) для автоматического выявления и нейтрализации ransomware-атак в реальном времени с точностью до 99%, что минимизирует риски простоев и потери данных 
  3. Computational Storage (например, SmartSSD) для выполнения вычислений непосредственно в накопителях, что сокращает объем передаваемых данных по сети и ускоряет выполнение data-intensive задач до 10 раз
  4. Глобальный файловый кэш (например, FlexCache) с поддержкой write-back для ускорения доступа к данным в распределенных средах с высоким RTT, что снижает задержки и нагрузку на WAN-каналы

Эти технологии — важный и перспективный вектор для BAUM, поскольку они позволяют предлагать бизнесу более надежные и производительные решения в области AI.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *
Author
Посетитель сайта

Добавить комментарий

Комментариев пока нет

Другие статьи, которые могут быть полезными

Для просмотра WWN-портов по протоколу Fibre Channel можно использовать пакет sysfsutils. Выполните установку пакета с набором утилит командой: aptitude install sysfsutils (для Ubuntu/Debian) yum install sysfsutils (для RHEL/CentOS) Получите информацию...
3695
10
Интеграция с Zvirt Реализована интеграция с отечественной системой управления виртуализацией – Zvirt. На данный момент взаимодействие систем выполняется по протоколу NFS, СХД предоставляет Zvirt сетевую папку. Также Zvirt выступает в...
2561
1
30 сентября завершился третий этап разработки программно-аппаратной платформы для прикладного применения искусственного интеллекта, включая обработку больших\сверх больших данных и многофакторную проверку гипотез (оператор проекта РФРИТ). По итогам третьего этапа проекта...
2135
1