
otvety_na_voprosy / 41 представление паралелного алгоритма диаграммой расписания вычислений
.docДля удобства представления параллельных алгоритмов наряду с другими
способами используют также временные диаграммы выполнения операторов
при заданных значениях времени начала (окончания) их выполнения. В диа-
граммах, использовавшихся в работе [1], операторы обозначаются прямоуголь-
никами с длиной, равной времени выполнения соответствующего оператора.
Для указания связей между прямоугольниками-операторами используются
стрелки, которые соответствуют дугам в графе алгоритма. Когда связей стано-
вится много, из-за множества стрелок проследить эти связи становится трудно.
Для того чтобы диаграмма оставалась наглядной при любом количестве
связей и однозначно отражала расписание параллельного алгоритма введем
следующие дополнительные правила. Ось ординат разобьем на интервалы, ка-
ждый из которых соответствует одному из параллельно работающих процессо-
ров. В каждом интервале будем размещать только те прямоугольники-
операторы, которые закреплены за соответствующим этому интервалу процес-
сором.
Операторы на диаграмме будем обозначать в центре прямоугольников
цифрой в кружке, а связи между операторами – цифрами слева и справа от это-
го кружка. В левой части прямоугольника-оператора будем записывать номера
предшествующих по информационной связи операторов, а в правой части –
номера операторов, следующих за данным оператором.
Поскольку каждый прямоугольник диаграммы размещается в интервале
«своего» процессора, описанный способ их нумерации отражает также связь
между процессорами. Поэтому этот способ представления является исчерпы-
вающим наглядным представлением расписания параллельного алгоритма и
может быть удобным программисту для написания параллельной программы.
При этом информация о номерах связанных операторов может использоваться
для оценки объема передаваемых данных как между процессами, так и между
процессорами.
Рис. 3.4. Пример временной диаграммы алгоритма
каскадного суммирования четырех чисел
На рис. 3.4 приведен пример диаграммы расписания, составленной для
приведенного на рис. 3.2 параллельного алгоритма каскадного суммирования 4
чисел на двух процессорах.