Реализация атомарной операции RDMA

Я слышал о том, что чтение и запись RDMA реализованы так: когда приходят запросы, сетевой интерфейс находит физическую страницу, а затем использует DMA для передачи данных на сетевой адаптер, а затем на цель.

Это просто для чтения и записи, но странно, когда дело доходит до атомарных операций. Мой вопрос в том, что атомарные операции RDMA реализованы так же, как чтение и запись, и как? И, более конкретно, какова связь между атомарными операциями процессора (такими как сравнение и обмен) и соответствующими операциями RDMA?


person user3008895    schedule 01.03.2015    source источник


Ответы (1)


Атомарные операции RDMA реализованы с использованием операций чтения и записи PCI-express. Как таковые, они не обеспечивают атомарность ни по отношению к атомарным операциям ЦП, ни по отношению к другим HCA.

person haggai_e    schedule 02.03.2015
comment
Существуют ли HCA (скажем, ConnectX-4 от Mellanox), которые используют атомарные алгоритмы PCIe вместо чтения и записи по PCIe? - person Anuj Kalia; 25.08.2015
comment
Текущие HCA Mellanox не поддерживают эту функцию. - person haggai_e; 31.08.2015
comment
Хаггей, а как насчет Connect X-5? mellanox.com/related-docs/user_manuals/ConnectX-5_VPI_IC.pdf ConnectX-5 обеспечивает... дополнительную поддержку операций Network Atomic и PCIe Atomic. – PCIe Gen 4… – PCIe Atomic. Требуется ли хост-платформа для обеспечения PCIe Atomic для использования X-5? - person osgx; 12.08.2016
comment
Да, центральный процессор должен поддерживать атомарность PCIe. Я считаю, что контроллер PCIe на Ivy Bridge и более новых серверных процессорах Intel поддерживает атомарность PCIe. Процессоры Sandy Bridge поддерживают PCIe 3.0, но не поддерживают атомарность PCIe, насколько мне известно. - person Anuj Kalia; 24.08.2016