Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Расчетно-графическая работа2.doc
Скачиваний:
10
Добавлен:
02.05.2014
Размер:
1.01 Mб
Скачать
      1. Временная диаграмма исполнения алгоритма

        1. Длительности исполнения команд

          1. Подготовка массива данных

РМУ 4.14 Задать (выписать) массив длительности исполнения команд.

ДИК: Длительности mzi исполнения команд Zi:

mz1

mz2

mz3

mz4

mz5

mz6

20

30

10

80

35

50

РМУ 4.15 1) Данные назначаются самостоятельно (в условных единицах).

2) Целесообразно отразить структурные особенности алгоритма при его исполнении во времени (это зависит от соотношения длительности команд).

        1. Временная диаграмма сетевого типа

РМУ 4.16 Выполняется полное построение ДИА сетевого типа, включая:

  • шкалу времени t;

  • линии zi жизненного цикла всех объектов Zi (по порядку номеров i);

  • линию ai жизненного цикла объекта Ai (полный цикл);

  • вертикальные (и наклонные) линии причинно-следственных связей событий;

  • эпюру загрузки ресурсов ei объекта Ai – занятые исполнители (число занятых процессоров процессов).

Выполняется ГИ: Горизонтальное исполнение ДИА

          1. ДИА: Диаграмма исполнения алгоритма. Ручные построения

// A143 = (((Z1  &1  Z2) V (Z3  (Z4 & (Z5  1  Z6))))  Z3  Z1)

// A143 = (((Z1&1 – Z2) V (Z3 – (Z4 & (Z51 – Z6)))) – Z3 – Z1)

// Включить координатную сетку встроенного графического редактора Word

РМУ 4.17 Соответствие видов текстов алгоритма:

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

РМУ 4.18 Проявление дополнительной нелинейной связи:

1) В данном примере при использовании принятых ранее параметрах длительности (исполнения) команд четко проявляется наличие дополнительной нелинейной связи (1, &1):

  • сдвиг (во времени) рабочего состояния команды Z2;

  • соответствующий провал эпюры загрузки оборудования (подштрихован).

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

          1. Диа: Диаграмма исполнения. Автоматизированные построения

Программа GRAMPRAL текущей версии обеспечивает построение временных диаграмм только для двухполюсных структур параллельных алгоритмов.

Для построения временных диаграмм структур с наличием нелинейных связей используется программа MPSD:

Диаграммы многополюсных структур алгоритмов (первичная опытная версия).

Представлен образец ДИА для другого алгоритма

          1. Краткая характеристика программы

Программа обеспечивает построение временных диаграмм заданного алгоритма по заданным параметрам длительности исполнения команд.

Данная программа может представлять любые структуры – двухполюсные и многополюсные структуры постоянного (не переключательного) типа.

Построение диаграммы осуществляется на основе формирования многопоточной модели параллельного алгоритма:

каждой команде алгоритма выделяется свой поток (tread).

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

Фактически файл кода структуры использует простой специальный язык параллельного программирования низкого уровня:

  • файл представляет программу работы многопоточной модели алгоритма;

  • в принципе программа может представлять параллельные алгоритмы неограниченной сложности по структуре алгоритмов (непереключательного типа):

ограничения только технические – 15 строк ДИА (15 разных команд).

Используется способ задания структуры алгоритма перечнем элементов и указанием связей каждого элемента с последующими элементами:

  • для узлов вилки # необходимо указать два последующих элемента;

  • для всех остальных элементов задается один последующий элемент.

Если используются узлы вилки на три и более выходов необходимо преобразование формулы алгоритма к форме только с двухместными операциями вилки (двоичное разделение потоков). Например:

(Z1 #& Z2 #& Z3) = ((Z1 #& Z2) #& Z3) = (Z1 #& (Z2 #& Z3))