Будет ли NIC с поддержкой RDMA выполнять преобразование в обратный порядок? - PullRequest
0 голосов
/ 17 октября 2018

Можно ли получить адаптер RDMA (например, Mellanox NIC) для преобразования в порядок байтов во время передачи данных?В частности, мы выполняем перевод RDMA из системы с прямым порядком байтов в систему с прямым порядком байтов и наоборот.Как только данные попадают в цель, нам нужно выполнить bswap32 () или bswap64 (), чтобы выполнить преобразование в порядке байтов, которое будет жевать процессорные циклы.Мне интересно, можем ли мы вместо этого получить бесплатные bswaps от NIC.

1 Ответ

0 голосов
/ 18 октября 2018

Обмен порядком байтов не является операцией / атрибутом, который определен в спецификации InfiniBand.Однако устройства Mellanox (ConnectX-4 и более поздние версии) предоставляют примитивы для вычисления векторов в стороне, с обменом порядком байтов в качестве одной из поддерживаемых операций.Это, по сути, означает, что можно выполнить этот HW-обмен данными в стороннем формате перед отправкой или после их получения.

Эта возможность векторного вычисления все еще находится на ранних стадиях с точки зрения подверженностиAPI уровня.Вы сможете найти некоторые ссылки в этих коммитах ядра Linux:

Частичная поддержка также доступна через "Экспериментальные глаголы "на Mellanox OFED - продолжайте следить за обновлениями.

...