Intel MPI использует несколько интерфейсов для взаимодействия с оборудованием, и DAPL не используется по умолчанию для всех случаев. OpenMPI также выберет какой-то интерфейс для текущего оборудования, это не всегда будут ibverbs, есть API с общей памятью для взаимодействия с локальными узлами и TCP для хостов только для Ethernet.
Список для Intel MPI (Linux):
https://software.intel.com/en-us/get-started-with-mpi-for-linux
Начало работы с библиотекой Intel® MPI для ОС Linux*. Последнее обновление: 24 августа 2015 г.
Поддержка любой комбинации следующих соединительных тканей:
- Общая память
- Сетевые структуры с возможностями сопоставления тегов через интерфейс сопоставления тегов (TMI), такие как Intel® True Scale Fabric, Infiniband*, Myrinet* и другие межсоединения.
- Собственный интерфейс InfiniBand* с помощью команд OFED*, предоставляемых Open Fabrics Alliance* (OFA*)
- Интерфейс OpenFabrics* (OFI*)
- Сетевые структуры с поддержкой RDMA через DAPL*, такие как сокеты InfiniBand* и Myrinet*, например, TCP/IP через Ethernet*, Gigabit Ethernet* и другие межсоединения
Интерфейс к фабрике можно выбрать с помощью переменной среды I_MPI_FABRICS: https://software.intel.com/en-us/node/535584
Выбор тканей. Последнее обновление: 22 февраля 2017 г.
Библиотека Intel® MPI позволяет выбрать коммуникационную структуру во время выполнения без необходимости перекомпилировать приложение. По умолчанию он автоматически выбирает наиболее подходящую фабрику на основе конфигурации вашего программного и аппаратного обеспечения. Это означает, что в большинстве случаев вам не придется возиться с выбором ткани вручную.
Однако в определенных ситуациях указание конкретной коммуникационной структуры может повысить производительность вашего приложения. Вы можете указать структуры для связи внутри узла и между узлами (внутриузловые и межузловые связи соответственно). Доступны следующие ткани:
Fabric
- Используемое сетевое оборудование и программное обеспечение
shm
— Общая память (только для внутриузловой связи).
dapl
- Сетевые структуры с поддержкой библиотеки программирования прямого доступа* (DAPL), такие как InfiniBand* и iWarp* (через DAPL).
tcp
— сетевые структуры с поддержкой TCP/IP, такие как Ethernet и InfiniBand* (через IPoIB*).
tmi
- Сетевые структуры с интерфейсом сопоставления тегов (TMI), такие как Intel® True Scale Fabric, Intel® Omni-Path Architecture и Myrinet* (через TMI).
ofa
— сетевые структуры с поддержкой OpenFabrics Alliance* (OFA), такие как InfiniBand* (через команды OFED*).
ofi
- Сетевые структуры с поддержкой интерфейсов OpenFabrics* (OFI), такие как Intel® True Scale Fabric, архитектура Intel® Omni-Path, InfiniBand* и Ethernet (через OFI API).
Для связи между узлами он использует первую доступную фабрику из списка фабрик по умолчанию. Этот список определяется автоматически для каждой аппаратной и программной конфигурации (подробности см. в I_MPI_FABRICS_LIST).
Для большинства конфигураций этот список выглядит следующим образом:
dapl,ofa,tcp,tmi,ofi
person
osgx
schedule
18.05.2017
dapl
, Intel MPI будет использовать его. Но нам нужны некоторые микротесты (не комплекс AMBER), чтобы сравнить практическую задержку сообщений с разными размерами на одном и том же оборудовании с IntelMPI с DAPL; с OFA (глаголы OFED); с ОФИ; и OpenMPI с различными поддерживаемыми им параметрами. Если вам нужно что-то понять, попробуйте прочитать настоящие документы/srcs; делайте тесты и задавайте только конкретные вопросы здесь. - person osgx   schedule 19.05.2017