Удаленный прямой доступ к памяти

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Удаленный прямой доступ к памяти (англ. remote direct memory access, RDMA) — вариант прямого доступа к памяти DMA к ОЗУ другого компьютера. Такой доступ позволяет получить доступ к данным хранящимся в удаленной системе без привлечения ОС обоих компьютеров. Является методом пересылки данных с высокой пропускной способностью и низкой латентностью и особенно полезен в больших параллельных вычислительных системах — кластерах.

RDMA реализован в различных протоколах, например, в Virtual Interface Architecture, InfiniBand и iWARP.

Преимущества[править | править исходный текст]

Аппаратная реализация RDMA предоставляет реализовать так называемый подход zero-copy в реализации сетей. При передаче данных с помощью RDMA исключаются лишние копирования между приложением и буферами операционной системы. Соответственно снижается объем работы центрального процессора, нагрузка на кэш-память, уменьшается количество переключений контекста, а сами передачи могут производиться одновременно с другой полезной работой. Когда приложение исполняет запрос RDMA Read или Write, данные могут доставляться напрямую в сетевой адаптер, уменьшая латентность передачи данных.

Недостатки[править | править исходный текст]

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

Примечания[править | править исходный текст]

Ссылки[править | править исходный текст]