Удаленный прямой доступ к памяти
В вычислительной технике удаленный прямой доступ к памяти ( RDMA ) — это прямой доступ к памяти из памяти одного компьютера в память другого без участия какой-либо операционной системы . Это обеспечивает высокую пропускную способность сети с малой задержкой , что особенно полезно в компьютерных кластерах с массовым параллелизмом .
Обзор [ править ]
RDMA поддерживает сеть с нулевым копированием , позволяя сетевому адаптеру передавать данные из проводной сети непосредственно в память приложения или из памяти приложения непосредственно в проводную сеть, устраняя необходимость копирования данных между памятью приложения и буферами данных в операционной системе. Такие передачи не требуют каких-либо действий со стороны процессоров , кэшей или переключателей контекста , и передачи продолжаются параллельно с другими системными операциями. Это уменьшает задержку при передаче сообщений.
Однако эта стратегия представляет несколько проблем, связанных с тем, что целевой узел не уведомляется о завершении запроса (односторонняя связь).
Принятие [ править ]
По состоянию на 2018 год RDMA получил более широкое признание благодаря усовершенствованиям реализации, обеспечивающим хорошую производительность по сравнению с обычной сетевой инфраструктурой. [1] Например, RDMA over Converged Ethernet (RoCE) теперь может работать как в инфраструктуре с потерями, так и без потерь. Кроме того, iWARP позволяет реализовать Ethernet RDMA на физическом уровне, используя TCP / IP в качестве транспорта, сочетая преимущества RDMA в производительности и задержке с недорогим стандартизированным решением. [2] Консорциум RDMA и сотрудничество DAT [3] сыграли ключевую роль в разработке протоколов RDMA и API для рассмотрения такими группами по стандартизации, как Internet Engineering Task Force и Interconnect Software Consortium. [4]
Поставщики оборудования начали работу над сетевыми адаптерами на базе RDMA большей емкости со скоростью 100 Гбит/с. [5] [6] Поставщики программного обеспечения, такие как IBM , [7] Red Hat и Oracle Corporation поддерживают эти API в своих последних продуктах. [8] и по состоянию на 2013 год [update] инженеры приступили к разработке сетевых адаптеров, реализующих RDMA через Ethernet. [9] И Red Hat Enterprise Linux , и Red Hat Enterprise MRG. [10] есть поддержка RDMA. Microsoft поддерживает RDMA в Windows Server 2012 через SMB Direct . Продукт VMware ESXi также поддерживает RDMA с 2015 года.
Общие реализации RDMA включают архитектуру виртуального интерфейса , RDMA over Converged Ethernet (RoCE), InfiniBand , Omni-Path и iWARP .
Использование RDMA [ править ]
Структуры контроля доступа приложений используют четко определенные API, изначально разработанные для протокола InfiniBand (хотя API можно использовать для любой из базовых реализаций RDMA). Используя очереди отправки и завершения, приложения выполняют операции RDMA, отправляя записи рабочей очереди (WQE) в очередь отправки (SQ) и получая уведомления об ответах из очереди завершения (CQ). [11]
Виды транспорта [ править ]
RDMA может надежно или ненадежно транспортировать данные по транспортным протоколам надежного подключения (RC) и ненадежных дейтаграмм (UD) соответственно. Преимущество первого заключается в сохранении запросов (ни один запрос не теряется), а второй требует меньше пар очередей при обработке нескольких соединений. Это связано с тем, что UD не требует установления соединения, что позволяет одному хосту взаимодействовать с любым другим, используя одну очередь. [12]
Ссылки [ править ]
- ^ RoCE работает в сети с потерями: https://dl.acm.org/citation.cfm?id=3098588&dl=ACM&coll=DL
- ^ «Понимание iWARP» (PDF) . Корпорация Интел . Проверено 16 мая 2018 г.
- ^ «Сайт совместной работы DAT» . Архивировано из оригинала 17 января 2015 года . Проверено 14 октября 2014 г.
- ^ Веб-сайт Консорциума программного обеспечения Interconnect. Архивировано 30 августа 2005 г. на Wayback Machine.
- ^ «Решения на базе Microsoft — Mellanox Technologies» . Проверено 14 октября 2014 г.
- ^ «40Gbe SMB Direct RDMA Over Ethernet для Windows Server 2012 — Chelsio Communications» . 2 апреля 2013 года . Проверено 14 октября 2014 г.
- ^ «СОФА-ХРАНЕНИЕ: СОЗДАНИЕ НЕЗАВИСИМОЙ СТРУКТУРЫ ДЛЯ ПОСТАВЩИКОВ ДЛЯ БЕСШОВНОЙ ВЫГРУЗКИ ХРАНЕНИЯ С ИСПОЛЬЗОВАНИЕМ SMARTNICS» (PDF) .
- ^ «Какое оборудование RDMA поддерживается в Red Hat Enterprise Linux?» . 2 июня 2016 г.
- ^ «40Gbe SMB Direct RDMA Over Ethernet для Windows Server 2012 — Chelsio Communications» . Челсио Коммуникейшнс. 2 апреля 2013 г. Проверено 15 июля 2016 г.
На демонстрации будет продемонстрирована работа Microsoft Windows Server 2012 SMB Direct со скоростью линии 40 Гбит с использованием RDMA через Ethernet (iWARP).
- ^ «Red Hat Enterprise MRG 2.0 уже доступен» . Архивировано из оригинала 25 августа 2016 года . Проверено 23 июня 2011 г.
- ^ Storm: быстрая транзакционная плоскость данных для удаленных структур данных: https://dl.acm.org/doi/abs/10.1145/3319647.3325827
- ^ Storm: быстрая транзакционная плоскость данных для удаленных структур данных: https://dl.acm.org/doi/pdf/10.1145/3319647.3325827
Внешние ссылки [ править ]
- Консорциум РДМА
- RFC 5040 : Спецификация протокола удаленного прямого доступа к памяти
- Учебное пособие по модели RDMA
- «Зачем идти на компромисс?» // HPCwire, Гилад Шейнер (Mellanox Technologies), 2006 г.
- Критика RDMA для высокопроизводительных вычислений
- RDMA читает: использовать или не использовать?
- [1]