Чем заменить libibverbs/librdmacm для Windows?

У нас есть наше приложение, работающее в Linux и использующее интерфейс RMDA (Infiniband) для связи между двумя модулями. Теперь нам нравится поддерживать наше приложение в Windows и, следовательно, искать замену IB Verbs.

Мы попытались установить драйверы Mellanox, но не смогли найти заголовки и библиотеки, чтобы наш код скомпилировался в Windows. Простой infiniband/verbs.h также не найден.

Мы также обнаружили, что RDMA в Windows поддерживается через Windows NDK, но, похоже, это очень низкий уровень. Мы ищем некоторый набор API среднего уровня для переноса нашего существующего кода на основе Linux в Windows.

Мы будем очень признательны, если кто-нибудь покажет нам, по какому пути нам следует идти.

С уважением


person dudhaniss    schedule 10.06.2020    source источник
comment
В дополнение к моему анализу; Я могу перенести свой код Linux RDMA (Infiniband) в Windows, используя winOFED ссылка с 3.2 версия. Но он кажется слишком старым и не поддерживает последние HW, такие как Mellanox Connect 5x. Поэтому я начал пробовать драйвер WinOF-2 ссылка . Но я вижу, что формат SDK (заголовки и библиотеки) отличается от того, что я получил от winOFED 3.2. Пожалуйста, помогите мне понять, в чем разница? Я использую неправильный SDK?   -  person dudhaniss    schedule 16.06.2020


Ответы (1)


Я отказался от поиска глаголов в Windows. Перешел на NetworkDirect.

https://docs.mellanox.com/display/winof2v250/Network+Direct+Interface

https://github.com/microsoft/NetworkDirect

Приведенный выше код предоставляет аналогичный API для Verbs.

person Tianyi Cai    schedule 25.05.2021
comment
Другой пример использования NetworkDirect: github.com/microsoft/hermes - person Tianyi Cai; 25.05.2021
comment
Тяньи Цай, ссылка на решение приветствуется, но убедитесь, что ваш ответ полезен и без нее: добавьте контекст вокруг ссылки, чтобы ваш другие пользователи будут иметь некоторое представление о том, что это такое и почему оно существует, а затем процитируйте наиболее важную часть страницы, на которую вы ссылаетесь, в случае, если целевая страница недоступна. Ответы, которые представляют собой не более чем ссылку, могут быть удалены. - person Espresso; 25.05.2021