Анализ качества размещения параллельных подпрограмм в матричных мультиконтроллерах 35
10. Ватутин Э. И., Зотов И. В. Метод формирования субоптимальных разбиений параллельных управляющих алгоритмов // Параллельные вычисления и задачи управления (PACO'04). М.: Институт проблем управления им. В.А. Трапезникова РАН, 2004. С. 884—917.
11. Ватутин Э. И., Зотов И. В. Параллельно-последовательный метод формирования субоптимальных разбиений параллельных управляющих алгоритмов. Свидетельство об официальной регистрации программы для ЭВМ № 2005613091 от 28.11.05.
12. [Электронный ресурс]: <http://ru.wikipedia.org/wiki/BOINC>.
Сведения об авторах
Эдуард Игоревич Ватутин — канд. техн. наук, доцент; Юго-Западный государственный университет,
кафедра вычислительной техники, Курск; E-mail: evatutin@rambler.ru
Михаил Евгеньевич Леонов — аспирант; Юго-Западный государственный университет, кафедра вычислительной техники, Курск; E-mail: mike_stranger@mail.ru
Рекомендована Юго-Западным Поступила в редакцию
государственным университетом 18.02.13 г.
УДК 681.3
Д. О. Бобынцев, Д. Б. Борзов, А. П. Типикин
АНАЛИЗ КАЧЕСТВА РАЗМЕЩЕНИЯ ПАРАЛЛЕЛЬНЫХ ПОДПРОГРАММ В МАТРИЧНЫХ МУЛЬТИКОНТРОЛЛЕРАХ
Рассмотрена проблема размещения параллельных подпрограмм в матричных мультиконтроллерах, по известным критериям проведен сравнительный анализ качества размещения.
Ключевые слова: матричные мультиконтроллеры, планирование размещения задач.
Правильное размещение взаимодействующих подпрограмм по процессорам матричных мультиконтроллеров является важным аспектом параллельной обработки. Неудачное распределение подпрограмм между процессорами приводит к перекрытиям маршрутов транзитной передачи данных, возрастанию коммуникационных задержек и существенному снижению производительности распараллеливания. Для минимизации коммуникационных задержек с помощью программно-аппаратных средств решается задача планирования размещения подпрограмм. Целью настоящей статьи является анализ качества размещения согласно методу, представленному в работе [1].
Математическая постановка задачи размещения подпрограмм описана в работе [1]. Наилучший вариант размещения определяется по алгоритму перестановки строк и столбцов матрицы обмена информацией (МОИ), описывающей граф О взаимодействия подпрограмм. Алгоритм позволяет размещать дуги графа О по каналам наименьшей длины. Минимаксный критерий поиска представлен следующим образом:
Т* = ^ {тах^Т* (р-, р;)}},
где Т^ (рг, Pj) — коммуникационная задержка при передаче данных между процессорами рг
и Pj, соответствующая текущему варианту размещения Р^. Значение задержки пропорционально произведению кратчайшего расстояния между данными процессорами на объем передаваемых данных. В настоящей работе выполнен сравнительный анализ минимаксного критерия с другим известным критерием поиска [2] следующего вида:
Т„* = шт
N 2
Е (Pi, Р))
По данному критерию минимизируется сумма всех задержек. В работе также проведено сравнение минимаксного критерия с представленным в работе [3] минимаксиминным критерием оценки качества размещения, предполагающим анализ перекрытий кратчайших каналов передачи данных по специально создаваемой базе данных избыточных кратчайших путей в мультиконтроллере. База данных создается по матрице смежности физической топологии муль-тиконтроллера. При размещении по минимаксиминному критерию минимизируется наибольшая из всех минимальных суммарных задержек, соответствующих кратчайшим каналам [3].
Программное моделирование задачи размещения позволяет провести сравнительный анализ данных критериев поиска наилучшего варианта размещения и исследовать влияние на оба критерия латентной составляющей коммуникационной задержки.
Объектом исследования при анализе критериев поиска является матрично-тороидаль-ный 64-процессорный блок 8*8 процессоров.
Исследования проведены на разреженных МОИ, так как они наиболее соответствуют реальным алгоритмам. Графики изменения величины максимальной задержки в процессе поиска по минимаксному критерию представлены на рис. 1, а. Кривая ТМ\ построена для одного из вариантов случайной разреженной МОИ, в каждой строке которой находится не более 10 ненулевых элементов. Видно, что максимальная задержка уменьшилась почти в два раза.
а)
т
1200
1000
800
600
400
ТМ1
ТМ2 ТМ3
1300
2600 3900
5200
£
б) т,
3700
3300
2900
2500
2100
Т£2
Тя
360 720 1080
Рис. 1
1440
£
Анализ качества размещения параллельных подпрограмм в матричных мультиконтроллерах 37
Согласно кривой ТМ2, распределение параллельных процедур по процессорам предполагает прямую зависимость объема передаваемых данных от кратчайшего расстояния между процессорами. Коэффициент снижения задержки а повышается до 3, это позволяет сделать вывод, что существенный эффект при переразмещении по минимаксному критерию достигается при некачественном начальном размещении. Такое начальное размещение является случайным, улучшить его практически нельзя вследствие высокой сложности задачи планирования размещения, следовательно, ее практическое решение разработчиком или программистом системы невозможно. Задача распараллеливания исходного алгоритма также является сложной, а некачественное распараллеливание может вызвать неудачное начальное размещение, что потребует планирования размещения подпрограмм.
Кривая ТМ3 показывает уменьшение максимальной задержки для той же МОИ, по которой построена кривая ТМ2, но при переразмещении по критерию (1). График показывает, что критерий (1) не гарантирует снижения максимальной задержки до такого уровня, при котором не будет нивелирован выигрыш от распараллеливания алгоритма.
На рис. 1, б представлены графики уменьшения суммарной задержки для МОИ (рис. 1, а, Тш и Тмз). Кривая Т^1 соответствует переразмещению задач по критерию (1). В данном случае снижение суммарной задержки близко к двукратному. По результатам многократных тестов можно сделать вывод, что критерий (1) обеспечивает снижение суммарной задержки не более чем в два раза. Кривая Т$2 отражает снижение суммарной задержки при переразмещении по минимаксному критерию. Аналогично рис. 1, а в этом случае коэффициент снижения задержки меньше и составляет около 1,5.
Величины задержки Т (см. рис. 1) равны значениям произведений кратчайших расстояний и объемов передаваемых данных без учета сомножителя, обратного скорости передачи данных и не влияющего на результаты минимизации [1].
На основании изложенного выше можно сделать вывод, что минимаксный критерий имеет преимущество перед критерием (1), так как позволяет контролировать задержки в каналах передачи данных, что является существенным фактором при оценке выигрыша от распараллеливания алгоритма.
Тестирование минимаксиминного критерия на разреженных случайных МОИ не выявляет ожидаемых отличий от минимаксного критерия, и в этом случае а=2—4 (рис. 2, а).
Для достижения наилучшего эффекта создается МОИ начального варианта размещения с целенаправленным полным перекрытием одного из кратчайших каналов исследуемой многопроцессорной структуры. Это означает, что ненулевыми элементами МОИ являются только те, которые соответствуют всем перекрытиям одного кратчайшего канала, т.е. всем возможным перекрытиям всех возможных избыточных путей данного канала.
На рис. 2, б представлены графики изменения величины о=Гн/Г для трех вариантов МОИ: о1 — случайная разреженная матрица (не более 10 ненулевых элементов в каждой строке), о2 — перекрытие канала длиной 4, о3 — перекрытие канала длиной 7. Графики показывают, что полное перекрытие кратчайшего канала приводит к резкому возрастанию коммуникационной задержки. В результате может быть достигнуто о=7 для перекрытия канала длиной 4 и о=10 для перекрытия канала длиной 7. Исследовать перекрытие канала длиной 8 нецелесообразно, поскольку анализ базы данных позволяет сделать вывод, что для этого одна из строк МОИ должна иметь все ненулевые элементы, кроме элемента, находящегося на главной диагонали. Это означает полносвязность одной из подпрограмм исходного алгоритма, что в реальных условиях невозможно.
Если на случайной МОИ коэффициент снижения задержки у обоих критериев одинаков, то на МОИ, соответствующей графику о3, т.е. перекрытию канала длиной 7, минимаксный критерий дает коэффициент 2,33. На рис. 2, в и г приведены графики изменения
коммуникационной задержки при размещении по минимаксному и минимаксиминному критериям для описанной выше МОИ.
а) Т 1120
940 760
580 400
\ Тшах шах
Т ша / ^
<шт
б)
9,6
7,2
4,8 2,4
5-3
СТ2
500
1000
1500
1000 2000
3000
£
а
0
0
в)
Т
■*■ шах
250
200
150
100
0 1000 2000 £ 0 1000 2000 3000 £
Рис. 2
На основании изложенного можно сделать следующие выводы.
1. Минимаксный критерий гарантирует снижение задержки до приемлемого уровня, при котором не будет нивелирован выигрыш от распараллеливания задач, если латентная составляющая задержки не превышает значение задержки в линии связи между процессорами.
2. Минимаксиминный критерий имеет преимущество в точности оценки качества размещения перед минимаксным, не учитывающим возможные перекрытия каналов передачи данных и, следовательно, не обеспечивающим точную оценку качества размещения, требуемого для дальнейшей маршрутизации.
3. При полном перекрытии одного из кратчайших каналов начальная задержка резко возрастает, что усиливает эффект от применения минимаксиминного критерия благодаря возрастанию коэффициента снижения задержки до 10.
Работа выполнена в рамках программы „Научные и научно-педагогические кадры инновационной России на 2009—2013 годы" (проект 14.B37.21.0598).
г)
Т
ш
1400
1000 600
200
СПИСОК ЛИТЕРАТУРЫ
1. Борзое Д. Б., Мараят Б. И. Методика планирования размещения задач в матрично-торроидальных базовых блоках кластерных мультиконтроллеров. Деп. в ВИНИТИ 18.07.06 г., №961-В 2006.
2. Курейчик В. М., Глушань В. М., Щербаков Л. И. Комбинаторные аппаратные модели и алгоритмы в САПР. М.: Радио и связь, 1990. 216 с.
3. Бобынцев Д. О., Борзов Д. Б. Минимаксиминный критерий оценки качества размещения параллельных подпрограмм в матричных мультиконтроллерах // Изв. ЮЗГУ. 2012. № 2. Ч. 1. С. 27—31.
Переразмещение подпрограмм в отказоустойчивых мультипроцессорных системах 39
Сведения об авторах
Денис Олегович Бобынцев — аспирант; Юго-Западный государственный университет, кафедра вычис-
лительной техники, Курск; E-mail: daniel8728@yandex.ru Дмитрий Борисович Борзов — канд. техн. наук, доцент; Юго-Западный государственный университет,
кафедра вычислительной техники, Курск; E-mail: borzovdb@kursknet.ru Александр Петрович Типикин — д-р техн. наук, профессор; Юго-Западный государственный университет,
кафедра вычислительной техники, Курск
Рекомендована Юго-Западным Поступила в редакцию
государственным университетом 18.02.13 г.
УДК 681.3
Д. Б. Борзов, Ю. В. Соколова, В. В. Минайлов
ПЕРЕРАЗМЕЩЕНИЕ ПОДПРОГРАММ В ОТКАЗОУСТОЙЧИВЫХ МУЛЬТИПРОЦЕССОРНЫХ СИСТЕМАХ
Рассмотрена проблема отказа процессора в мультипроцессорных системах, обоснована необходимость переразмещения подпрограмм с учетом отказавших процессоров системы, показана возможность отказа межпроцессорных линков. Предложен алгоритм отказоустойчивого переразмещения при отказе процессора системы.
Ключевые слова: мультипроцессор, отказ, алгоритм, планирование, размещение.
В настоящее время все большее распространение получают отказоустойчивые мульти-компьютеры [1]. В случае отказа одного из процессоров и/или процессорных связей правильное функционирование быстро восстанавливается путем реконфигурации структуры с отключением неисправного процессора и обхода неисправной процессорной связи. Как показано в статье [2], значительно изменяется топология многопроцессорной системы и требуется переразмещение назначенных ранее подпрограмм. В настоящей работе в продолжение исследований [3, 4] предлагается вариант решения данной задачи.
Множество реализуемых в мультикомпьютере подпрограмм описывается графом взаимодействия задач G = (X, Е), где
X =
4.1
2.1
4.2
^2.2
Vi xqi
Ы.1
V2
Ч.о
2.о
q.o
H.n
x2.n
q.n
— множество вершин, соответствующих отдельным подпрограммам, а е^ е Е — множество дуг, или связей, между ними при /, ] = (q -1) п + к, которые определяются объемами данных (в байтах) Шу и передаются между подзадачами, описываемыми матрицей смежности