УПРАВЛЕНИЕ, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
УДК 519.217.2
Е.В. Ларкин, д-р техн. наук, проф., зав. кафедрой, elarkin@mail.ru (Россия, Тула, ТулГУ),
А.Н. Ивутин, канд. техн. наук, доц., alexey. ivutin@ gmail.com (Россия, Тула, ТулГУ)
«СОРЕВНОВАНИЯ» В МНОГОПРОЦЕССОРНЫХ КОМПЬЮТЕРНЫХ СИСТЕМАХ
Рассмотрены вопросы исследования процессов в параллельных системах, в частности определениям времени ожидания уже завершившимися элементарными процессами, еще не завершенных процессов (эффект «соревнования»).
Ключевые слова: сеть Петри-Маркова, полушаг, «соревнования», функция распределения
Теория сетей Петри является хорошо известным и популярным формализмом, предназначенным для работы с параллельными и асинхронными системами. Одним из основных направлений использования теории сетей Петри является формальное описание и моделирование параллельных систем. Ключевым вопросом данной области является вопрос выполнимости и корректности модели. При создании параллельных систем необходимо выполнение условия гибкости модели и возможность выполнения строго анализа ее свойств.
При построении моделей сложных систем со множеством состояний и переходов обязательным условием остаётся учёт таких её свойств как: случайность времени выполнения операции, возможность одновременного выполнения групп операторов, а также стохастический характер
198
переходов. Для учета всех основных особенностей систем такого типа в наибольшей степени подходит математический аппарат сетей Петри-Маркова (СПМ) [1]. Идеальным инструментарием для анализа взаимодействия процессов в системах являются сети Петри, однако, являясь асинхронными по определению, модели указанного типа позволяют лишь ответить на вопросы о принципиальной достижимости состояний системы, соответствующих заданным требованиям, но спрогнозировать моменты наступления тех или иных состояний с помощью сетей Петри, в их классической интерпретации невозможно. Рядом авторов предпринимались попытки приспособить сети Петри для определения временных интервалов (time extended Petri nets), однако даже в модифицированном варианте они не позволяют учитывать все многообразие взаимодействий в системах исследуемого класса. Кроме того, ограничения в моделировании параллельных процессов с помощью сетей Петри заключаются в ограниченности логических условий продолжения процессов элементарной конъюнкцией, что не учитывает всего многообразия взаимодействий субъектов.
Наиболее полно учет такого свойства, как параллельное развитие стохастических взаимодействующих процессов во времени, может быть осуществлено в Петри-Марковских моделях, в которых алгоритмы функционирования отдельных субъектов представляются в виде элементарных подсетей Петри-Маркова с полумарковскими свойствами, а взаимодействие моделируется с помощью т.н. непримитивных переходов, для которых определяется логическая функция взаимодействия [2]. Таким образом, в моделях исследуемого типа на структуры, учитывающие параллелизм, накладываются стохастические и временные параметры элементарных полумарковских процессов и логические условия, замыкающие корпоративно-конкурентный алгоритм функционирования системы. В целом модели, сформированные подобным образом, являются естественным аналитическим описанием алгоритма, реализованного в параллельной системе с известной структурой. Степень дробления алгоритма на операторы позволит достаточно просто оценивать временные и вероятностные характеристики элементарных процессов, представленных соответствующими операторами, а также логику взаимодействия процессов в корпоративно-конкурентной среде [3].
Параллельно функционирующие компоненты конкурентных систем во временной области вступают в «соревнование», одним из аспектов которого является эффект ожидания момента наступления некоторой совокупности событий. Исследование соревнования связано с определением времени ожидания уже завершившимися элементарными процессами, еще не завершенных процессов. Любое соревнование может быть сведено к соревнованию двух процессов, которое моделируется сетью Петри, приведенной на рис. 1. В указанной сети позиции {ф, у} представляют собой модели соревнующихся процессов [4].
£
Рис. 1. «Соревнование» двух полушагов
Сеть Петри, имеет структуру:
П= {ф^НСо^!},
Г (\ Г
,0 ? о, >
(1)
Плотности распределения времени пребывания фишек в позициях (р и у/СИМ определяются плотностями, соответственно, <p(t) и yAJ).
Для классической сети Петри логическое условие выполнения полушага (%(ти> ао) имеет вид элементарной конъюнкции
К
Xj{zn\0= A* j{kz)j(zn)> (2)
для которой функция распределения определяется в виде
Лг=1
(3)
Если полушаги а0(р и сг0^ производятся одновременно, то плотность распределения времени ожидания полушагом оь<р события завершения выполнения полушага определяется в виде корреляции
со
1(0|ф(т)\|/(/ + т)^т
/Ф-ИК (0 =-^-> (4)
GO
\Ф (0^(0
/=о
где г- вспомогательная переменная, имеющая физический смысл времени; Ф(/), - соответствующие функции распределения; 1(7) - единичная функция Хевисайда.
Следует отметить, что операция (4) не является коммутативной. Соответственно
со
f\\r—>ф(0 :
о
00
(5)
t=о 200
и в °бш,ем случае (г) ф У^^ф (г) .
В часто встречающемся практическом случае К процессов разбиваются на две группы. Не нарушая степени общности, будем считать, что первая группа имеет номера с первого по N-й, а вторая группа - с ^ + 1)-го по К-й. Плотности распределения времени выполнения соответствующих групп процессов определяются зависимостями, получаемыми из (3):
( ) N ^ ( ) N - ( )
N V )= X /] (тх )] (хп )(/ )П Г] (кх )] (хп )(/ ), (6) т=1 к=1
к Ф т
УN+ 1о- К (t) = (тх ) ] ( гп )(t) П Г] (кг)](гп) , (7)
т=N+1 к=N+1
к Ф т
Плотности распределения времени ожидания первой группой момента, когда завершатся процессы второй группы, определяется зависимостью
да
1(г )1 у10 N +1о К (t +
(N+ЮК)(t) = —^-. (8)
1 ^ N ^ +Ю К (t)
г=0
Плотность распределения времени ожидания второй группой момента, когда завершатся процессы первой группы, определяется зависимостью
да
1(г )0 ^+1^ К (т)/1^ N (г + т)йт /(N+1^ К N )(г ) =-°да-. (9)
1 ^+1^ К (г N (г )
г=0
Однако следует отметить, что такой подход достаточно трудоемок при большом числе заявок, кроме того, не позволяет учесть перекрестное влияние заявок. В связи с этим предлагается способ ранжирования заявок, лишенный описанного недостатка. Пусть в соревнование вступают N процессов, с функцией вероятностей F(x) и плотностью распределения /(х) (рис. 2).
Как отмечалось выше, для сети Петри логическое условие выполнения полушага имеет вид элементарной конъюнкции (2, 3) и лишь в этом случае вероятность /(х) имеет вид плотности распределения, т.е. выполняется условие
й 1 / (х - т) Г (х)йх
-0. (10)
йт
Рассматриваемые процессы являются независимыми, следовательно вероятность того, что первый процесс будет находится в заданной позиции
определяется зависимостью
N
Г(1) = 1 -П (1 - Гп ),
п=1
(11)
где Гп —функция распределения времени изъятия п-й фишки из заданной позиции.
Рис. 2. Функция и плотность распределения для задачи «соревнования»
N процессов
Из (12) может быть получена плотность распределения
йГ(1) N N
(1) = X /к П(1 -Гп).
йх
(12)
к=1 п=1 п Ф к
Взвешенная плотность распределения определяется зависимостью
/1 П (1 - Гп ).
п=2
Тогда, вероятность того, что первым окажется к-й процесс определяется как
да
N
Рк = 1 /к П (1 - Гп )
(13)
0 п=1
пФк
В этом случае плотность распределения того, что первой в «соревновании» придет заявка к определяется зависимостью:
N
/к П (1 - Гп)
/к =
п=1 пФк
да
N
(14)
1 /к П (1 - Гп )
0 п=1
пФк
а математическое ожидание равно:
œ
Tk = Jt • fkdt. (15)
0
Таким образом, повторяя данный алгоритм, последовательно исключая лидеров может быть получен полный ранжированный список процессов, участвующий в «соревновании».
Список литературы
1. Ларкин Е.В., Сабо Ю.И. Сети Петри-Маркова и отказоустойчивость авионики. Тула: Тул. гос. ун-т., 2004. 208 с.
2. Ларкин Е.В. Формирование сетей Петри-Маркова для моделирования параллельных систем //Математическое и программное обеспечение вычислительных систем. М. Горячая линия-Телеком, 2006. С. 4 - 8.
3. Применение сетей Петри-Маркова при моделировании структурных отказов в системе // Известия ТулГУ. Сер. Вычислительная техника. Информационные технологии. Системы управления. Вып. 4. Т. 3: Системы управления. Тула: ТулГУ, 2003. С. 95 -103.
4. Формирование сетей Петри-Маркова для моделирования параллельных систем // Математическое и программное обеспечение вычислительных систем. М. Горячая линия-Телеком, 2006. С. 4 - 8.
E. V. Larkin, A.N. Ivutin
"COMPETITIONS" IN MULTIPROCESSOR COMPUTER SYSTEMS
The problems of the study of processes in parallel systems, in particular the definitions of the waiting time has already completed the elementary processes that have not yet completed process (effect of "competition ") are reviewed.
Key words: Petri-Markov nets, half-step, "competition ", distribution function.
Получено 20.11.12