Научная статья на тему 'Алгоритмы технологических этапов автоматизированного распараллеливания моделирующих программ'

Алгоритмы технологических этапов автоматизированного распараллеливания моделирующих программ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
160
28
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АВТОМАТИЗИРОВАННАЯ СИСТЕМА УПРАВЛЕНИЯ / ИМИТАЦИОННАЯ МОДЕЛЬ / ДЕКОМПОЗИЦИЯ / НЕОДНОРОДНЫЙ КЛАСТЕР

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Олзоева С. И.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Алгоритмы технологических этапов автоматизированного распараллеливания моделирующих программ»

УДК 004.27

С. И. Олзоева, д-р техн. наук, доц., sseseg@yandex.ru (Россия, Улан-Удэ, ВСГТУ)

АЛГОРИТМЫ ТЕХНОЛОГИЧЕСКИХ ЭТАПОВ АВТОМАТИЗИРОВАННОГО РАСПАРАЛЛЕЛИВАНИЯ МОДЕЛИРУЮЩИХ ПРОГРАММ

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

Ключевые слова: автоматизированная система управления, имитационная модель, декомпозиция, неоднородный кластер.

Современные автоматизированные системы управления (АСУ) сложными организационно-техническими комплексами различного назначения имеют специфику территориально рассредоточенных автоматизированных систем и называются распределенными автоматизированными системами (РАС).

Особо важной задачей процесса проектирования и создания РАС, интегрирующей функциональное и информационное представление системы в рамках единой модели, является коммуникационна задача, решение которой связано с обеспечением необходимого взаимодействия компонентов РАС в ее технологической деятельности. Подсистемой РАС, обеспечивающей коммуникационные функции, является распределенная информационна система управления (РИСУ), объединяющая в себе коммуникационную сеть и программно-технические компоненты РАС - подсистемы управления и обработки информации. В РИСУ компоненты РАС представляются не их внутренней структурой, а параметрами, метрическими характеристиками и свойствами, определяющими взаимодействие элементов друг с другом, в совокупности влияющими на производительность используемой коммуникационной сети. Показатели качества функционирования сети зависят от характеристик прикладных задач и порождаемого ими сетевого трафика.

Специфика задач разработки РИСУ состоит в не формализуемости процессов функционирования системы строгими математическими методами, что определяет особую значимость метода имитационного моделирования в задачах проектирования РИСУ.

Проблема заключается в том, что при проектировании РИСУ используются имитационные модели (ИМ), основанные на методе статистических испытаний Монте-Карто, характеризующемся медленной сходимостью. Получение достоверных оценок требует значительного ресурса времени. Размерность исследуемой системы влечет за собой размерность имитаци-

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

Основные ограничения известных методов и технологий имитационного моделирования, используемых в настоящее время, обусловлен: недостаточной эффективностью решения в них проблем производительности, настройки и адаптации к новой вычислительной платформе - многопроцессорным системам и сетям. Эти ограничения могут быть устранены на основе проведения исследований и разработки методов имитационного моделирования систем на распределенной вычислительной платформе, что должно обеспечить ускорение процесса моделирования без потери точности и упрощения модели [1].

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

Предлагаются принципы построения программного инструментария АСОРИМ, автоматизирующего процесс организации распределенного моделирования РИСУ. Определены основные функции в виде технологических этапов и их алгоритмическое наполнение.

Технологическими этапами функционирования АСОРИМ являются:

1. Декомпозиция ПО ИМ РИСУ.

2. Оценка качества вариантов проектов декомпозиции РИСУ. Определение прогнозируемого ускорения.

3. Выбор алгоритма синхронизации распределенных процессов.

4. Формирование децентрализованной управляющей программы РИМ и распределенной базы данных моделирования.

5. Оптимальное распределение программных блоков ИМ по процессорам вычислительной системы.

Алгоритмическим наполнением технологических этапов являются:

- метод декомпозиции имитационной модели РИСУ, основанный на иерархическом агломеративном алгоритме автоматической классификации. По результатам декомпозиции формируются состав блоков РИМ и распределенная база данных модели;

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

- метод анализа и выбора алгоритма синхронизации распределенных процессов, применяемый к сформированному составу РИМ, по результатам которого производится построение децентрализован ой управляющей программы РИМ;

- способ оптимального распределения программных блоков РИМ по процессорам вычислительной системы.

На практике проблема декомпозиции ИМ обычно решается за счет декомпозиции моделируемой системы с последующим построением ИМ меньшей размерности в соответствии с выделенными частями. В этом случае применяются методы теории графов, учитывающие в большей степени структурную связность объектов моделируемой системы безотносительно к интенсивности количественных характеристик их динамической связности. Последние зависят не только от структуры моделируемой системы, но и от заданных правил функционирования системы, распределений вероятностей и частоты взаимодействия элементов системы, вместе составляющих входные данные ИМ. Критерий распараллеливания, состоящий в минимизации межпроцессорных обменов данными, требует учета именно такого рода характеристик. Кроме того, структура программного обеспечения ИМ определяется схемой моделирующего алгоритма и отличается от топологической структуры моделируемой системы.

Предлагается решение данной проблемы, заключающееся в декомпозиции ПО ИМ РИСУ методом автоматической классификации, позволяющим производить разбиение совокупности объектов не по одному параметру, а по целому набору признаков.

Для выделения объектов, подлежащих классификации, произведено формализованное описание ИМ РИСУ с использованием РДО-метода, в результате которого определен: подмножества Vj однотиных действий,

имеющих одинаковую логиу изменения состояний релевантны ресурсов. Виртуальное (возможное) действие V = (е^, е$) опсывается через событи

начала и оконани действ и, Е = ^ е 2,...еп } - множество всех возможных

событий моделиуемой системы. Ресурсы, состояня которых изменяются при наступени некоторого событи е, называются релевантными событию е . Ресурсы, релевантные действию V , есть объеднение множеств ресурсов, релевантны: событиям начала и конца действия: ^ =Яе‘ иЯек .

В ИМ логиа виртуальн:х действий воспроизводится обрабатывающими модулями событий. Действим соответствуют обрабатывающие модули событий начала и оконани действий. Одинаковые действи, отличающиеся множествами релевантных ресурсов, можно выполнть параллельно на разных процессорах распределенной вычислительной системы.

Следовательно, задача декомпозиции ПО ИМ РИСУ состоит в классификации множества витальных действий модели по степени сходства их множеств релевантных ресурсов. Задача распараллеливани (декомпозиции) ПО ИМ РИСУ ставится следующим образом.

Задано конечное множество объектов V = (vJ.У2,...,vn), в котором каждый объект VI имеет набор признаков X- =(Хц,х-2,...,х-р). Необходимо

произвести разбиение множества V на классы наиболее связанных объектов по критерию минимизации связей между классами.

Для решения задачи вводится метрика количественной характеристики различия объектов:

2 Р ?

й (X,Xj) = Х(хк/ ~хк}) • (1)

к=1

Выбор метрики вида (1) произведен, исхода из предложенного способа задания количественных признаков объектов. Признаки, заданные в матрице Х, являются однородными и равноценными, имеют одинаковый вес с точки зрени влияния на формиование кластеров.

Разбиение множества виртуальных действий ИМ производится с использованием иерархического агломеративного алгоритма, заключающегося в последовательном объединении исходных элементов и построении денрограммы. Критерием объединени кластеров является значение целевой фунции Ж, в качестве которой выбрана функци

Ж: й- к = min {й-к},(к ф1),

к=1,ш

где 1 и к - номера кластеров; ш - количество кластеров.

В по следовательно сти возрастающи велиин целевой функции Ж выявляется скачок. Разрезание денрограммы в месте «скачка» дает число кластеров, состоящих из наиболее связанных между собой объектов, они отражаются в иерархическом дереве различными ветвями.

В результате кластеризации множества витулпьных действий ИМ

получаем М непересекающихся кластеров, где VI У0,...,V1 ) есть 1-

1 ^ п1

м

кластер, состоящий из п- действий., п = =^п^.

1 =1

Число полученных кластеров определяет количество блоков декомпозированной ИМ РИСУ. Витулпьные действи, входящие в один кластер, формиуют единый блок ИМ. По результатам про из веде ной классификации виртуальных действий формиуются: матрица сопряжени полученных блоков ИМ; матрица интенсивностей взаимодействий между блоками; распределена база даннк моделиования.

Принцип построени распределеной ИМ заключаются в следующем. Блоки РИМ представляют собой ИМ, воспроизводящие наиболее связанны множествами релевантных событий действи. Внутри блока сохра-

няется классическая форма квазипараллельного исполнения. Файлы БД блока содержат только те запси, которые соответствуют множествам релевантных ресурсов действи ИМ, входящих в один класс. Фунцию со-гласовани поведени процессов внутри блока в едином модельном времени выполняет управляющая программа (УП) блока. Координаци действий между блоками РИМ, выполняющимися на разных процессорах, осуществляется с помощью механизма алгоритма синхронизации, предназначенного для поддержани правильной логики развитая распределенной модели.

Разработаны принципы построени децентрализованной управляющей программы РИМ, которая состоит из управляющих программ-блоков, взаимодействующих между собой через прием и посылку сообщений. Управляющие программы блоков осуществляют только операцию чтени из буфера линий связи. Прием сообщений осуществляется в фоновом режиме без остановки алгоритма имитации.

УП блоков ИМ выполняют действи, которые делятся на две основные группы:

1) координация взаимодействий между блоками в соответствии с выбранным алгоритмом синронизации (оптимистическим ии консервативным);

2) координаци действий модели внтри блока в соответствии со строго синхронным алгоритмом синхронизации процессов.

В зависимости от выбранного алгоритма синхронизации действи УП по обработке полученных сообщений (группа 1) различаются, а вторая група действий сохраняется в неизменном виде. Разработан: алгоритмы функционировани УП с консервативным и оптимистическим алгоритмами синронизации.

Локальн:е сети и неоднородные кластеры характеризуются различными производительностями процессоров, а полученые программные блоки декомпозированой ИМ могут существенно различаться по объему операций, выполняемых ими. Эффективное совместное выполнене различных программ на неоднородна распределеных системах в большой степени зависит от правильного размещени задач по процессорам, учитывающим специфну как вьиислительной системы (количество процессоров, их производительность, латентность и пропускная способность коммуникационна каналов), так и конкретного программного приложени (длительность исполнения программна модулей).

Способ оценки качества вариантов декомпозиции заключается в определении возможного ускорения вычислительного процесса РИМ и основан на применении математического аппарата теории случайны импульсных потоков и позволяет учесть характеристики вычислительной платформы, на которой предполагается реализация распределеного моделирования.

Входными данными алгоритма вычисления прогнозируемого ускорения являются: Xj (j=1, М) - средня продолжительность выполнения

программы j -го блока; X j (j=1, М) - частота взаимодействия я-го блока с

другими блоками РИМ. Эти величины определяются по результатам произведенной декомпозиции, с использованием которых для каждого блока задается условный поток активностей и рассматриваются характеристики суммарного потока, позволяющие вычислить искомую оценку прогнозируемого ускорения. Для учета времени, затрачиваемого на обмен сообщениями по среде передачи между процессорами, вводится аналогичный условный поток активностей, характеристиками которого являются: Х^ - интенсивность взаимодействий между всеми М блоками ИМ; j^ - значение

латентности коммуникационной среды, т. е. время, затрачиваемое на передачу одного сообщения, складывающееся из программной и аппаратной составляющих. В результате работы алгоритма получаются оценки прогнозируемого ускорения, позволяющие однозначно выбрать вариант проекта распреде ленной ИМ[2].

Таким образом, автономность функционирования АСОРИМ вкупе с пользовательским интерфейсом делают его удобным средством для решения задачи распараллеливания ИМ РИСУ и перенесения имитационной программы на имеющийся в распоряжении пользователя парк компьютеров: локальную или кластерную сеть.

Библиографический список

1. Кутузов О.И., Олзоева С.И. Алгоритмический анализ стохастических сетевых моделей на многопроцессорных системах // Методы и средства обработки информации: сб. трудов Всероссийской научн. конф. М.: МГУ, 2003. С. 228-233.

2. Олзоева С.И. Способ составления расписани для имитационного моделирования на многопроцессорных системах // Технологическая системотехника. Тула, 2006. С. 102-105.

S. Olzoeva

Algorithms of service phases of automatic parallelization of simulation program

The questions of auxiliary tools creating for automatic parallelization of simulation program for the purpose of speed up the simulations is reviewed.

Получено 12.11.2009

i Надоели баннеры? Вы всегда можете отключить рекламу.