Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / lecture-9.ppt
Скачиваний:
0
Добавлен:
11.06.2024
Размер:
139.26 Кб
Скачать

О времени коммуникаций в системах с распределенной памятью

Дополнительные возможности MPI

О времени коммуникаций в распределенных системах.

1. Топологии сети процессоров.

Диаметр сети d - максимальное расстояние между двумя произвольными узлами сети

1.1 Коммуникационная сеть с топологий сети типа «шина» (bus). d=1

1.2 Коммуникационная сеть с топологий сети типа «линейка» (linear array, farm). d= N-1

1. 3 Коммуникационная сеть с топологий сети типа «кольцо» (ring). D= N/2

1. 4 Коммуникационная сеть с топологий сети типа «двумерная решетка» (mesh).

Если соединить между собой граничные процессоры по горизонтали

и по вертикали - тор.

.

1. 5. Гиперкуб, (hypercube).

d log2 N, N 2p p – количество измерений гиперкуба

Трехмерный гиперкуб, N=8

Вp-мерном гиперкубе каждый процессор непосредственно связан ровно с p соседями.

Процессоры в гиперкубе нумеруют с помощью бинарного отраженного кода Грея

Всети с топологий «гиперкуб» диаметр сети медленно растет

с ростом числа процессоров в системе

2. Алгоритмы маршрутизации.

Оптимальные (кратчайший путь) и неоптимальные.

Детерминированные и адаптивные.

Пример оптимального часто применяемого метода- покоординатная маршрутизация (dimension-ordered routing)

Для решетки – это метод XY- маршрутизации

3. Времена и методы передачи данных.

Tстарта ( )– время подготовки сообщения для передачи, поиск маршрута и пр. (время старта, задержка, латентность, latency)

Tпередачи-служ ( ) – время передачи служебных данных между соседними процессорами (с физической связью) – оболочка сообщения, блок для поиска ошибок с КС, кодами и тп.

Tпередачи-слова ( )– время передачи одного байта между соседними процессорами (с физической связью).

Метод передачи сообщений целиком (сообщение длины m по пути длины k)

Тсом ~ Tстарта + (m x Tпередачи-слова + Tпередачи-служ) * k (1)

Метод передачи сообщений пакетами (сообщение длины m по пути длину k)

Тсом ~ Tстарта + m x Tпередачи-слова + Tпередачи-служ * k

Реализует идею конвейера

Передача пакетами – обычно быстрее; требует дополнительных аппаратных возможностей, более сложные алгоритмы передачи (Tпередачи-служ возрастает )

Время передачи данных между двумя процессорами для разных топологий (k = диаметр сети)

Топология

Передача

Передача пакетов

сообщений

 

 

Кольцо

 

 

Решетка-тор

Гиперкуб

В методе передачи пакетов можно пренебречь Tпередачи-служ

Размер пакета (Vmax ) – Windows, сеть Fast Ethernet - 1500 байтов

Размер служебных данных () - протокол TCP/IP, Windows, сеть Fast Ethernet – 76 байт

Уточнение оценок времен передачи данных между двумя процессорами для топологии “полный граф” (k=1) и метода пакетов

Исходная оценка (1) в случае k=1:

Тсом ~ Tстарта + m x Tпередачи-слова + Tпередачи-служ (Тсом = )

Tстарта зависит от объема передаваемых данных Tпередачи-служ зависит от количества передаваемых пакетов

Tстарта зависит от и - аппаратной и программной составляющих - время подготовки одного байта данных для передачи по сети

Обычно предполагается, что подготовка данных для передачи второго и всех последующих пакетов может быть совмещена с пересылкой по сети предшествующих пакетов и латентность, тем самым, не может превышать величины:

n – количество передаваемых пакетов Vmax – размер пакета

– размер пакета

На базе таких моделей строятся теоретические оценки трудоемкости коммуникационных операций

Качественная характеристика : Tстарта >> Tпередачи-слова

На практике часто используется простая оценка:

Тсом ~ Tстарта + m x Tпередачи-слова

Это модель, предложенная Хокни (the Hockney model).

Измерение латентности (latency) и пропускной способности (bandwidth) коммуникационной сети

Пропускная способность сети - количество информации, передаваемой между узлами сети в единицу времени (MB/sec)

Латентность (задержка) - время, затрачиваемое программным обеспечением и устройствами сети на подготовку к передаче информации

Способ измерения латентности

Латентность измеряется как время, необходимое на передачу сигнала (сообщения нулевой длины).

Сигнал пересылается между двумя процессорами в прямом и обратном направлении.

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

Таким образом, если время на N пересылок сообщений нулевой длины туда и обратно составляет T сек., то латентность измеряется как

Latency = T/(2N)

Соседние файлы в папке Лекции