Скачиваний:
20
Добавлен:
01.05.2014
Размер:
211.46 Кб
Скачать

Учебный цикл "Архитектура ВС"

Дисциплины

«Анализ производительности ВС»,

«Анализ производительности МПС»

Теоретические и практические указания к выполнению лабораторной работы №1

“Построение операционных графовых моделей последовательных

программ и их анализ на основе аппарата

поглощающих цепей Маркова”

  1. Введение.

Курс “Анализ производительности ВС (МПС) ” направлен на оценку показателей, характеризующих организацию и функционирование программных средств ВС, и позволяют снабдить инженеров-программистов профессиональными знаниями для создания высокоэффективных программных продуктов.

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

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

2. Теоретическое описание моделей и методов анализа

    1. Понятие операционной графовой модели.

Моделирование производительности программ основывается на их представлении графовыми моделями. Ориентированные нагруженные графы программ, вершинам или дугам которых сопоставляются параметры потребления ресурсов исследуемой программой, называются операционными графовыми моделями (ОГМ). Различаются ОГМ с нагруженными вершинами – ГНВ и ОГМ с нагруженными дугами - ГНД, которые являются дуальными и могут быть преобразованы друг в друга. Эти модели представляют формальную спецификацию потребления ресурсов вычислительных процессов.

Для ГНВ вершинам сопоставляется процесс, потребляющий ресурсы, и вершины нагружаются соответствующими параметрами. В качестве процесса может быть команда, оператор ЯВУ, фрагмент программы. В качестве параметров: количество команд, время выполнения оператора или фрагмента, количество используемых ячеек памяти. Дуги задают взаимодействие процессов по управлению (или порядок выполнения процессов). Если взаимодействующие программы имеют статистический разброс, то дугам сопоставляется вероятность выбора пути или процесса для очередного выполнения. Хотя допускается и детерминированный выбор дуг при фиксированных данных.

Отличительная особенность ОГМ – она не обязана обеспечивать конечный функциональный результат работы программы, а должна верно отражать потребление ресурсов при ее выполнении. Это позволяет заменить в алгоритме программы одни участки другими, если их потребление ресурсов одинаковое.

При изображении ОГМ обычно используют 4 варианта представления:

  1. Блок-схема

  2. ГНВ

  3. ГНД

  4. Сеть Петри (рассматриваются ниже)

1.Блок-схемы.

Используют 3 основных элемента:

  1. Процесс–может соответствовать некоторому линейному участку программы или подпрограмме

Аi LАi – потребление ресурса данным процессом

2) Ветвление LАi

да Ai нет

Pi Qi=1-Pi

LАi – нагрузочный параметр, характеризующий потребление ресурсов для выполнения предиката и выбора пути

3) Объединение от Ai от Aj

Этот процесс не потребляет+

ресурсы

Ak

Связывает выходы процессов Ai, Aj по дизъюктивному принципу управления и передает управление процессу Ак. Для запуска Ак достаточно завершения одного из процессов Ai и Aj.

  1. Графы с нагруженными вершинами (ГНВ)

L1 L2 L3

  • следование Н 1 2 3 К

L1 L2 L3

  • ветвление Н 1 P1 2 3 К

Q1

  • цикл с фиксированным числом повторений (ЦФЧП)

L1 (k+1)*L2 k*L3

Н 1 2 3 К

1 1 1

K- число повторений цикла

K+1 – число проверок до выхода из цикла

L1 – ресурсы, потребляемые при инициализации цикла

L2 - ресурсы, потребляемые при выполнении одной проверки условия и перехода

L3 – ресурсы, потребляемые при однократном выполнении тела цикла

  • цикл с неизвестным числом повторений (ЦНЧП)

L1 L2 L3

Н 1 2 p 3 К

Инициализация q

цикла Проверка Тело

условия цикла

р=к/(к+1) q=1/(k+1)

3. Графы с нагруженными дугами (ГНД) ( Нагрузка Lk приписывается дугам модели )

L1 L2 L3

  • следование Н 1 2 3 К

p, L2

  • ветвление Н 1 L1 2 3 L3 К

1-P

  • цикл с фиксированным числом повторений (ЦФЧП)

L1 (k+1)L2 kL3

Н 1 2 3 К

1 1 1

  • Цикл с неизвестным числом повторений (ЦНЧП)

1,L3

1,L1 p,L2

Н 1 2 3 К

Q=1-p,L2

Для графов с нулевыми дугами задаются только вероятности выбора пути {Pi,Li=0}

Если Р=1 или Li=0, то их можно не указывать.

Проблемы построения операционных графовых моделей.

  1. Расчет вероятностей ветвлений

  2. Задание параметров, характеризующих потребление ресурсов.

  1. Проблема расчета вероятностей ветвлений решается на основе двух представлений поведения программ:

    1. Марковский подход

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

  • Программа является свободно интерпретируемой ( допускаются любые маршруты выполнения программы )

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

    1. Семантический подход

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

Типовые события в БПР ( блоках принятия решений ):

  1. События, вероятности наступления которых полностью определяются законами распределения входных данных.

  2. События, вероятности наступления которых простым образом зависят от структуры и параметров алгоритма

  3. События, результатом наступления которых является выбор процессов с примерно одинаковым потреблением ресурсов.

  4. События, выбор ветвей у которых сложным образом зависит от структуры и параметров программы.

В 4-ом случае для оценки вероятностей используют 2 способа:

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

  2. Считая вероятность выбора ветвей известной, производят линейное изменение этой вероятности с некторым шагом от 0 до 1 и отмечают влияние ее изменения на оцениваемую характеристику производительности. В качестве фиксируемой берут вероятность, при которой потребление ресурсов наибольшее в наихудшем случае или некоторое среднее для метода средних значений.