logo
3_Тексты лекций ПВС 2011

Коммуникационная среда с топологией «3-мерный тор»

Каждый из 6 двунаправленных каналов вычислительного модуля имеет пропускную способность 400 Мбайт/с в каждом направлении. Коммуникационная среда с топологией 3-мерный тор используется как для передачи сообщениий между парой вычислительных модулей, так и для передачи сообщениий группе вычислительных модулей, участвующих в выполнении одной параллельной программы. Данные между вычислительными модулями передаются в виде пакетов. Пакеты могут иметь размер от 32 до 256 байт с дискретностью 32 байта. Аппаратные средства обеспечивают гарантированную доставку пакетов. Длинные сообщения передаются как совокупности пакетов.

Коммуникационная среда реализует как детерминированный алгоритм маршрутизации по кратчайшим путям, так и адаптивный алгоритм маршрутизации с установлением соединения на время передачи.

Каждый физический канал разделяется 4 виртуальными каналами, два из которых используют детерминированный алгоритм маршрутизации, а два других — адаптивный. Один из виртуальных каналов с детерминированным алгоритмом маршрутизации используется как гарантированный бездедлоковый маршрут, а второй — как канал передачи высоко приоритетных пакетов.

Алгоритмы маршрутизации работоспособны при наличии отказавших вычислительных модулей.

Коммуникационная среда с топологией «дерево»

Коммуникационная среда с топологией «дерево», в дальнейшем просто дерево, передает пакеты той же структуры, что и среда с топологией «тор». Структура узла дерева показана на рис. 8.

Рис. 8. Структура узла дерева

Канал дерева имеет пропускную способность 350 Мбайт/с. Передача пакета по дереву в одном направлении при 64 К модулей имеет задержку 1,5 микросекунды.

Каждый физический канал разделяется 2 виртуальными каналами. Операции на дереве управляются путем программной модификации состояния управляющих регистров.

Дерево используется либо для передач данных между двумя модулями, например между вычислительным модулем и модулем ввода-вывода, либо для выполнения вычислений на дереве.

Блок дерева, реализующий в вычислительном модуле или модуле ввода-вывода функции вершины дерева, имеет целочисленное АЛУ для обработки поступающих пакетов и формирования результирующего пакета. Содержимое пакетов может быть операндами побитовых логических операций или целочисленных операций, таких, как «+» или «максимум». Например, на дереве выполняется коллективная операция MPI Allreduce.

Для выполнения операции суммирования с плавающей точкой требуется два прохода по дереву: один для определения максимального значения порядка, а другой для соответствующего сдвига мантиссы и выдачи в дерево для суммирования.

Все пакеты передаются вниз по дереву в соответствии с управляющим perистром блока дерева и принимаются - при достижении адресатов.

Отдельное дерево формируется для быстрой асинхронной выработки глобальных значений логических функций «И» (AND) и «ИЛИ» (OR), используемых при барьерной синхронизации. Время выработки этих значений на дереве из 64К вершин составляет около 1,5 микросекунд.