Подтвердить что ты не робот

Имея окна Azure A8 с поддержкой InfiniBand, как отправлять N байтов из одного и получать по другому?

Мне нравится InfiniBand обещание сети 40 Гбит/с. Мои потребности не сопоставляются с моделью MPI с одним ядром node + slaves, и, если возможно, я бы предпочел вообще не использовать MPI. Мне нужен простой API-интерфейс connect/send/receive/close (или его асинхронные версии). Тем не менее, прочитав документы MS Azure и Microsoft HPC Pack, я не могу найти какой-либо API для C/С++ или .Net, который позволит использовать InfiniBand в качестве транспорта для моего приложения. Итак, мой вопрос прост, как использовать InfiniBand для подключения к другим узлам и отправки им пакетов данных и получения на другом конце? (Как и некоторые Socket API или что-то в этом роде)

ND-SPI на Azure или DAPL-ND в учебнике Azure connect/send/receive/close, что я ищу.

4b9b3361

Ответ 1

Я согласен с комментарием Hristo, что намного проще использовать API более высокого уровня, который предоставляет MPI, а не "родная" библиотека IB.
И просто для уточнения, MPI не навязывает Master-Slave. Как только все процессы встанут и у вас есть коммуникатор, у вас есть все гибкость в мире. Любой может отправлять данные кому-либо. И с MPI 2.0 у вас есть односторонняя связь, где один работник может по существу достичь другой памяти.

Ответ 2

... Я не могу найти какой-либо API для C/С++ или .Net, который позволит использовать InfiniBand как транспорт для моего приложения. Так что мой вопрос прост как использовать InfiniBand для подключения к другим узлам и отправки пакетов данных им и получать на другом конце?

API C для прямого доступа к InfiniBand известен как "глаголы".

Среди многочисленных ресурсов в Интернете, чтобы представить эту тему, я нашел http://blog.zhaw.ch/icclab/infiniband-an-introduction-simple-ib-verbs-program-with-rdma-write/ относительно доступным.

Конечной властью для программного обеспечения InfiniBand является OpenFabrics. OFED сайт связывает документы и загрузки.

В разделе "OFS for Windows" я заметил, что есть ссылка на Обзор сетевого интерфейса сетевого ядра (NDKPI), который может встретиться ваши потребности, но я никогда не использовал его, потому что я не использую Windows.