Конфигурация маршрутизации портов Infiniband OpenSM N-to-N

. У меня есть 10 серверов с двумя процессорами каждый и одна сетевая карта Mellanox 100G Infiniband на каждый процессор. Каждая сетевая карта подключена к одному 36-портовому коммутатору Mellanox 100G IB.

Мое приложение RDMA работает как один процесс на каждом узле NUMA и привязывается к локальной сетевой карте, чтобы избежать межпроцессорного трафика. Каждый узел/процесс должен подключаться к каждому другому узлу, используя режим RC.

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

Есть ли способ разрешить одной сетевой карте подключаться к любой другой сетевой карте/порту в сети?

По сути, я хотел бы заставить OpenSM думать, что каждая сетевая карта находится на своем собственном сервере, т.е. делая вид, что трафик QPI невозможен.

См.: https://docs.mellanox.com/display/MLNXOFEDv461000/OpenSM

Когда матрицы MinHop существуют, каждый коммутатор посещается, и для каждого целевого LID принимается решение о том, какой порт должен быть используется, чтобы добраться до этой крышки.

Соответствующий код: https://github.com/linux-rdma/opensm/blob/844ab3b7edaad983449b5d3a4a773088b8daa299/opensm/osm_ucast_mgr.c#L201

0
задан 4 October 2021 в 12:11
1 ответ

https://community.mellanox.com/s/question/0D51T00006RVtlU/rdmacm-connection-setup-issues

К сведению, проблема была в значительной степени решена путем обеспечения работы службы ibacm (Infiniband Assistant Communication Manager)на всех серверах.

Запуск sudo ibacmна всех серверах решил проблему, не спрашивайте почему...

0
ответ дан 4 October 2021 в 18:37

Теги

Похожие вопросы