Transcript

Информационная безопасность и информационные технологии

301

Golchevskiy Yury Valentinovich, candidate of physical and mathematical sciences, docent, [email protected], Russia, Syktyvkar, Syktyvkar State University,

Severin Pavel Alexeevich, master, [email protected], Russia, Syktyvkar, Syktyvkar State University

УДК 519.217.2

ПРОГНОЗИРОВАНИЕ ВРЕМЕНИ ВЫПОЛНЕНИЯ АЛГОРИТМА

А.Н. Ивутин, Е.В. Ларкин

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

Ключевые слова: цифровая система, алгоритм, полумарковский процесс, сеть Петри-Маркова, время выполнения.

Получение оценок времени выполнения алгоритма является одной из важнейших задач эффективного распараллеливания и оптимального распределения потоков управления в многопроцессорных конфигурациях. Традиционно именно время выполнения является основным, хотя и не единственным, индексом производительности. При этом, как показано в [1], измерения производительности на реальных системах для случая не-монопольного использования ресурсов не могут считаться надежными в силу того, что подобные измерения очень чувствительны к рабочей на-грузке на систему в момент измерения. Для однопрограммного режима ва-риативность времени исполнения также присутствует, однако ее величи-ной можно пренебречь [2]. Более того, время выполнения программы в монопольном режиме в некоторой системе может служить нижней грани-цей времени выполнения этой программы в этой же системе в конкурент-ном режиме [3], что, по сути, означает случай с полным отсутствием па-раллелизма в реализации алгоритма. Однако и такая оценка не может слу-жить достоверной, поскольку не гарантирует неизменность или предска-зуемость получаемого результата для систем, отличных от той, на которой и производилось сравнение. Таким образом, можно сделать вывод, что для ЭВМ фон Неймановского типа при обработке случайных данных время обработки является случайной величиной, а исход обработки является слу-чайным, что определяется плотностями распределения обрабатываемых

Известия ТулГУ. Технические науки. 2013. Вып. 3

302

данных. Поэтому при оценке временной сложности требуется привлечение теории случайных, в частности Марковских, процессов.

Любая компьютерная программа описывает некоторое семейство алгоритмов, выбор которых определяется срабатыванием условных опера-торов [4]. Случай отсутствия условных операторов означает реализацию одного алгоритма или одной последовательности операций. Таким обра-зом, можно разделить все множество операторов D на операторы-функции DF, реализующие действия на линейных участках и операторы-условия DC, управляющие порядком выполнения программы, причем

D=DF∪DC, DF∩DC=∅, DiC= Fj

k

mjD

=Ψ , (1)

где Ψ — некоторая математическая операция. Срабатывание условных операторов определяется только входными

данными и результатами их обработки, что, в конечном счете, делает та-кую зависимость от входной информации исключительной. При этом ре-зультат на выходе программы будет инвариантен к выбору компьютера, на котором будет выполняться программа, при условии неизменности вход-ных данных. Для представления потока управления программы в таких случаях часто используют управляющий граф [5, 6], который позволяет найти управляющие условия, от которых зависит данная операция. Недос-таток управляющего графа заключается в том, что он фиксирует некоторую последовательность операций, соблюдать которую не обязательно. Это связано с тем, что в вычислительных системах параллельной архитектуры в любой момент времени может выполняться несколько операций. В зави-симости от архитектуры параллельной системы и применяемых оптимиза-ционных схем порядок и количество одновременно выполняемых опера-ций может различаться, однако неизменным должно оставаться одно усло-вие – ни один из операторов D не может выполняться раньше, чем будут получены все необходимые ему входные аргументы. Данное условие на-зывается информационной зависимостью операторов программы, которое удобно представить в виде графа.

Граф информационных связей - это граф, вершинами которого яв-ляются операторы и предикатные выражения, а дуги, инцидентные верши-не, указывают значения данных, от которых зависят операции в этой вер-шине. Между двумя операторами (вершинами) существует дуга, если в результате их перестановки значение в любом из этих операторов может оказаться неверным, т.е. от оператора Dv к оператору Dk существует дуга в случае, если результат выполнения оператора Dv явно используется в опе-раторе Dk.

Указанный граф G={D, E}, где D — множество вершин, а E — множество дуг является параметризованным и детерминированным. Учи-тывая, что в графе G дугам присвоено направление, указанный граф явля-ется ориентированным. Дополнительно для такого графа может быть вве-

Информационная безопасность и информационные технологии

303

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

В общем случае, задача построения графа информационных зави-симостей сводится к выявлению в программе всех возможных состояний, а также выяснению зависимостей между ними. При этом важной особенно-стью таких связей является то, что взаимодействие функциональных бло-ков системы происходит не только на основании передаваемых между ни-ми данных, но и в строго определенном порядке. Пусть оператор Dk непо-средственно зависит от m операторов. Тогда

Dk = fk(Dk-1, Dk-2, Dk-3, …, Dk-m,). (2) В свою очередь, каждый из операторов Dk-i зависит от j операторов.

В результате формула (2) принимает вид Dk = fk(fk-1(fk-j()…), fk-2(fk-h()…), …, fk-m(…)). (3)

Полученная зависимость (3) является по своей сути рекурсивной, позволяющей выстроить полную цепочку зависимостей некоторого опера-тора Dk от входного вектора X={x1, x2, …, xn}, т.е. в общем случае сущест-вует некоторая функция F, для которой верно равенство

Dk = F(X). (4) Методика построения графа информационных связей для задач

распараллеливания приведена в [7, 8]. Процесс интерпретации детерминированного алгоритма рядом ав-

торов [9, 10, 11, 12] рассматривается как полумарковский процесс с непре-рывным временем. Операторы алгоритма рассматривается как состояния полумарковского процесса, выполнение оператора как пребывание полу-марковского процесса в соответствующем состоянии, а процесс интерпре-тации алгоритма в целом рассматривается как блуждание алгоритма по со-стояниям полумарковского процесса.

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

М = {G, h(t)}, (5) где G - граф, описывающий структуру процесса; h(t) - полумарковская матрица.

Структура графа G, описывающего полумарковский процесс, опре-деляется в виде

G = {A, Z, R}, (6) где А = {a1(a), ..., aj(a), ..., aJ(a)} - множество вершин графа, представляющих различаемые состояния системы; Z = {z1(z), ..., zj(z), ..., zJ(z)} - множество ре-бер графа, представляющих процесс переключения системы из одного со-стояния в другое при поступлении/обслуживании заявок; R = (rj(a)l(a)) - мат-рица смежности графа [13, 14].

При этом вершины aj(a) ∈ А, 1 ≤ j(a) ≤ = J(a) моделируют состояния

Известия ТулГУ. Технические науки. 2013. Вып. 3

304

полумарковского процесса. Для каждого состояния aj(a) определяются вы-ходная О(aj(a)) и входная I(aj(a)) функции. Выходная функция

...,,{)( )](,[1)( ajOaj aaO = Aaa ajONajOn ⊂}...,, )](,[)](,[ - это множество состояний, в которые полумарковский процесс может переключиться из состояния aj(a). Входная функция I(aj(a)) Aaaa ajINajInajI ⊂= }...,,...,,{ )](,[)](,[)](,[1 - это множество состояний, из которых полумарковский процесс может пере-ключиться в ai(a).

Полумарковская матрица h(t) определяет стохастические и времен-ные параметры полумарковского процесса и представляет собой прямое произведение вложенной цепи Маркова р = (pj(a)l(a)) на матрицу плотностей распределения f(t) = [fj(a)l(a)(t)] времени пребывания в состояниях полумар-ковского процесса:

==⊗= )]([)()( )()( thtt alajpfh

=

)(...)(...)(

)(......

)(...

...)(

)(...)(...)(

)()()()()()()()()(1)()(1)(

)()()()()()()()()(1)()(1)(

)()(1)()(1)),(1)()(1)(1)(1)(1)(1

tfptfptfp

tfptfptfp

tfptfptfp

aJaJaJaJalaJalaJaaJaaJ

aJajaJajalajalajaajaaj

aJaaJalaaalaaaaa

. (7)

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

Другим существенным недостатком полумарковского процесса яв-ляется последействие временных характеристик, возникающее вследствие отличия законов распределения моментов наступления событий (напри-мер, перехода от интерпретации одного оператора к другому) от экспонен-циального. Степень последействия может быть оценена как некоторая ве-роятностная мера, а наличие последействия усложняет процесс анализа вычислительной системы (ВС), поскольку после каждого события в систе-ме приходится переоценивать все плотности распределения времени, ос-тавшегося до конца интерпретации текущих выполняемых операторов в каждом из субъектов [13, 15].

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

Наиболее просто взаимодействие в ВС может быть описано с по-

Информационная безопасность и информационные технологии

305

мощью сети Петри, которая представляет собой двудольный ориентиро-ванный граф, описываемый множеством

П = {A, Z, R~ , R̂}, (8)

где A = {a1(a), ..., aj(a), ..., aJ(a)} - множество вершин первого рода, называемое множеством позиций; Z = {z1(z), ..., zj(z), ..., zJ(z)} - множество вершин второ-го рода, называемое множеством переходов; ( ) ( )( )zjajr~~ =R , матрица смежно-сти, отображающая множество позиций в множество переходов;

( ) ( )( )ajzjr̂ˆ =R , отображающая множество переходов в множество пози-ций [16].

Ключевым понятием сети Петри является понятие фишки, которая моделирует оператор, в данный конкретный момент интерпретируемый ВС, а также выходной и входной функции перехода. Под выходной функ-цией перехода zj(z) понимается подмножество позиций, для которых суще-ствует дуга, ведущая из указанного перехода, т.е.

...,,{)( )](,[1)( zjOzjA azO = Aaa zjONzjOn ⊂}...,, )](,[)](,[ . Под входной функцией перехода понимается подмножество позиций, из которых существует дуга, ведущая в этот переход, т.е. IА(zj(z)) Aaaa яjINяjInяjI ⊂= }...,,...,,{ )](,[)](,[)](,[1 .

Переключения сети Петри называются срабатываниями переходов и сводятся к изыманию по одной фишке из всех позиций подмножества IА(zj(z)) перехода zj(z) и перемещению их в каждую позицию подмножества ОА(zj(z)). Переключение разрешается, если ∀cj[I,j(z)] ≠ 0, cj[I,j(z)] ∈ С, 1[I, j(z)] ≤ j[I, j(z)] ≤ J[I, j(z)].

Интерпретация алгоритмов субъектов информационного взаимо-действия, как и само взаимодействие элементарных алгоритмов, модели-руется с помощью сети Петри в виде последовательности переключений в дискретном времени. При этом одновременно происходит срабатывание всех переходов, для которых срабатывание разрешено [15].

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

Сеть Петри-Маркова (СПМ), формируемая объединением струк-турной модели (8) и структурно-параметрической модели (5), позволяет аналитически описывать как срабатывание сети Петри, так и временные

Известия ТулГУ. Технические науки. 2013. Вып. 3

306

интервалы между срабатываниями. Однако, наличие последействия при очередном срабатывании существенно усложняет практическое использо-вание этого математического аппарата и делает его практически неприме-нимым при моделировании сложных систем массового обслуживания (СМО), где любой субъект информационного взаимодействия является как источником заявок на обслуживание, так и обслуживающим каналом, в ре-зультате чего в системе источники/обслуживающие каналы возникают до-полнительные перекрестные и обратные связи, механизма исследования которых в настоящее время не существует [13, 17, 18].

Поэтому с применением математического аппарата СПМ и теории СМО ниже излагается разработанная концепция моделирования взаимо-действующих информационных процессов в ВС, предусматривающая:

единство математического описания любого субъекта взаимодейст-вия на любом иерархическом уровне;

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

учет сложной логики взаимодействия элементарных последова-тельных алгоритмов;

учет специфики функционирования субъекта заключается в том, что любой субъект функционирует по алгоритму, является источником за-просов на обслуживание и одновременно обслуживающим каналом;

разработку математического аппарата для оперирования со струк-турными и параметрическими составляющими модели информационного взаимодействия;

отсутствие последействия при срабатывании СПМ, и связанное с этим упрощение выкладок при получении конечных результатов.

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

Ψ = {П, М}, П = {A, Z, R~ , R̂}, M = {h(t), Λ}, (9)

где П - структура элементарной сети Петри-Маркова (ЭСПМ); М - множе-ство параметров.

В множестве Z ЭСПМ (9) имеются только два непримитивных пе-рехода: переход z1(z) ∈ Z, моделирующий оператор «начало», для которого IА(z1(z)) = ∅ и переход zJ(z) ∈ Z, моделирующий оператор «конец», для ко-торого ОА(z1(z)) = ∅. Все остальные переходы являются примитивными. ЭСПМ (9) является слабосвязной сетью, в которой имеются пути z1(z) →

Информационная безопасность и информационные технологии

307

а1(а) и а1(а) → z1(z) для ∀а1(а) ∈ А. ЭСПМ может быть преобразована в полумарковский процесс, для

которого может быть определена плотность распределения времени дос-тижения поглощающего состояния аJ(z) из начального состояния а1(z) по за-висимости

( ) ( ) ( ) ( )[ ] ( )[ ]∑∞

=

− ⋅=1

11

1w

zJw

zJ ssLtf θIehI , (10)

где I1(z) = (1, 0, ..., 0, ...., 0); IJ(z) = (0, ..., 0, ...., 0, 1); h(s) = L[h(t)];

( )

( ) ( )( ) ( ) ( )( ) ( ) ( )( )

( ) ( )( ) ( ) ( )( ) ( ) ( )( )

( ) ( )( ) ( ) ( )( ) ( ) ( )( )

=

tetete

tetete

tetete

Ls

aJzJajzJazJ

ajzjajzjazj

aJzajzaz

.........

.........

......

1

1

1111

е ; (11)

( ) ( )( ) ( ) ( ) ( )( ) ∈=

случаях.остальных всех во 0; если, zjAaj

ajzj

zOatte

δ

Из h1J(t) могут быть получены математическое ожидание и диспер-сия времени достижения поглощающего состояния аJ(z) из начального со-стояния а1(z):

( ) ( ) ( )∫∫∞∞

−⋅==0

2111

011 ; dtTtthDtdtthT JJJJJ . (12)

Если вместо полумарковской матрицы заданы матрицы вероятно-стей р, плотностей распределения Т, и дисперсий D, то математическое ожидание Т1J и дисперсия D1J могут быть получены непосредственным вы-числением по зависимостям:

( )[ ] ( )∑∞

=

+⊗=1

~

11w

zJww

zJT θITpI ; (13)

( ) ( )[ ] ( )2

11

~~~

11 Jw

zJwwww

zJ TD −⊗+⊗= ∑∞

=

+++ θITTDpI . (14)

Зависимость (12) или (13) является моделью эффективности эле-ментарного вычислительного процесса, реализуемого в ВС.

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

Известия ТулГУ. Технические науки. 2013. Вып. 3

308

Задача проектирования оптимальных по быстродействию про-граммных систем является классической: требуется найти значение векто-ра Х* ( )***

1 ...,,...,, Nn xxx= варьируемых параметров Х = )...,,...,,( 1 Nn xxx , ко-торое доставляет минимум целевой функции

min)( * =Xς , (15) где ς(X) - скалярная функция векторного аргумента, которая представляет собой модель цели проектирования.

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

а) для плотностей распределения ( ) ( ) ( ) ( )( )fzjajzjaj tf X, времени пребы-вания полумарковского процесса в позициях аj(а) сети Петри-Маркова вида (9), сформированной как модель соответствующей компоненты реальной физической системы, 1(а) ≤ j(а) ≤ J(а), 1(z) ≤ j(z) ≤ J(z), ( ) ( ) XX ⊂fzjaj ;

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

ского процесса в позициях аj(а) ( ) ( ) ( ) ( )( ) ( ) ( ) ( ) ( )( )∫∞

=0

,, dtttftT fzjajzjajfzjajzjaj XX ,

1(а) ≤ j(а) ≤ J(а), 1(z) ≤ j(z) ≤ J(z), ( ) ( ) XX ⊂fzjaj ; в) для дисперсий времени пребывания полумарковского процесса в

позициях аj(а)

( ) ( ) ( ) ( )( ) ( ) ( ) ( ) ( )( )[ ] ( ) ( ) ( ) ( )( )∫∞

−=0

2 ,,, dttftTttD fzjajzjajfzjajzjajfzjajzjaj XXX , 1(а) ≤ j(а)

≤ J(а), 1(z) ≤ j(z) ≤ J(z), ( ) ( ) XX ⊂fzjaj ; г) для вероятностей ( ) ( ) ( ) ( )( )pzjajzjajp X переключения полумарковско-

го процесса из позиции аj(а) в переход zj(z) 1(z) ≤ j(z) ≤ J(z), 1(а) ≤ j(а) ≤ J(а), ( ) ( ) XX ⊂pzjaj ;

д) для выходных функций переходов ОA[zj(z), Хj(z)О], ( ) XX ⊂Оzj , 1(z) ≤ j(z) ≤ J(z);

е) для логических условий ( ) ( ) ( ) ( )( )pajzjajzj XΛ выполнения полушагов из переходов zj(z) в позиции аj(а) ∈ ОA(zj(z)) сети Петри-Маркова вида (9) 1(z) ≤ j(z) ≤ J(z), 1(а) ≤ j(а) ≤ J(а), ( ) ( ) XX ⊂zjaj .

Перечисленные выражения входят в систему равенств, неравенств, булевых выражений, теоретико-множественных функций и т.п. вида

gk(X) >< bk; 1 ≤ k ≤ K, (16) где gk(X) - некоторая непрерывная, дискретная, логическая или иная функ-ция; bk - скалярный параметр.

Выражения «а - в», входящие в систему (16), отражают параметри-

Информационная безопасность и информационные технологии

309

ческие изменения модели программно-аппаратного комплекса. Выражение «г» отражает структурно-параметрические аспекты, а выражения д), е), входящие в систему (16), отражают структурные аспекты модели. Вероят-ности ( ) ( ) ( ) ( )( )pzjajzjajp X , входящие в выражения г), отнесены к разряду структурно-параметрических вследствие того, что при ( ) ( ) ( ) ( )( )pzjajzjajp X = 0 фактически дуга ( ) ( )( )zjAaj zIa ∉ выпадает из структуры двудольного графа и 0~

)()( =zjajr . Таким образом, для целевой платформы с заранее известными ха-

рактеристиками можно с высокой долей достоверности определить время выполнения операторов DF и, соответственно, определить время выполне-ния линейных (без ветвлений) участков алгоритма. Введенное условие де-терминированности позволит также вычислить и общее время выполнения программы с учетом операторов группы DC, как общее время выполнения алгоритма по всем ветвям условий, но эта оценка не будет являться досто-верной, поскольку в любой момент времени может быть выполнено только одно из множества n условий.

Однако существует возможность уточнения результатов, заклю-чающаяся в предсказании ветвлений алгоритма (рис. 1).

><

Рис. 1. Оператор-условие и варианты продолжения выполнения

Выше было показано, что любой из операторов алгоритма, в конеч-

ном счете, зависит только от вектора входных данных X. Зная закон рас-пределения входных данных f(X), можно оценить вероятности исхода со-бытия Di

C. Для этого представим вектор входных данных и вероятностный закон их распределения в виде n+1 мерного пространства, где осям абс-цисс соответствуют компоненты вектора X, а оси ординат закон распреде-ления f(X). Тогда, чтобы при выполнении оператора Di

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

0)( ≤XijG . (17) Обозначим область, соответствующую выражению (17) как

( )0)( ≤= Xijij Gµ (рис. 2), причем для областей исхода событий должно выполняться условие непересечения:

≠≠

=∩kj

kj

ijikij если ,

, если ,0µµµ (18)

Известия ТулГУ. Технические науки. 2013. Вып. 3

310

Тогда вероятность выполнения перехода по j-й ветке для DiC опера-

тора может быть определена выражением

∫ ∫= Nj dxdxdxfpij

...)(... 21Xµ

, (19)

где N — размерность вектора входных данных X. Из выражения (19) также можно получить вероятность неперехода

по j-й ветке как 1 - pj, что для случая перехода с двумя условиями равно-сильно переходу по другой ветке.

Рис. 2. Области условий в n-мерном пространстве

В инженерных приложениях вместо плотностей распределения времени выполнения операторов используется минимальное, максималь-ное и среднее время выполнения операций [20] и среднеквадратичное от-клонение времени выполнения операций. Исследуем возможность получе-ния математических выражений, которые позволяют напрямую рассчиты-вать основные числовые характеристики полумарковской матрицы (мате-матические ожидания и дисперсии) по числовым характеристикам и сто-хастической матрице полумарковского процесса [13], что позволит, учи-тывая зависимости (17), оценить время выполнения программы.

Рассмотрим матрицы ξ = (ξmn), ζ = (ζnm), φ(s) = [φmn(s)], η(s) = [ηnm(s)]. (20)

Матрицы ξ и ζ являются матрицами коэффициентов, имеющих свойства вероятностей. Матрицы φ(s) и η(s) имеют свойства характеристи-ческих матриц, матрицы ξ и φ(s) имеют размер М × N. Матрицы ζ и η(s) имеют размер N × М.

Математические ожидания и дисперсии плотностей распределения, получающихся из элементов характеристических матриц путем нахожде-ния обратного преобразования Лапласа, имеют следующие обозначения:

( )[ ] mnmn tdtsL µφ =∫∞

0

1 ; ( )[ ] nmnm tdtsL νη =∫∞

0

1 ;

( )[ ]( ) mnmnmn dttsL ρµφ =−∫∞

0

21 ; ( )[ ]( ) nmnmnm dttsL σνη =−∫∞

0

21 .

Определим структуру следующего произведения:

Информационная безопасность и информационные технологии

311

[ξ ⊗ φ(s)]⋅[ζ ⊗ η(s)] = ( ) ( )

( ) ( )

( ) ( )

( ) ( )=

ηζηζ

ηζηζ⋅

φξφξ

φξφξ=

ss

ss

ss

ss

NMNMNN

MM

MNMNMM

NN

.........

...

.........

...

11

111111

11

111111

[ ] ( ) ( )[ ]

η⋅φ⋅ζ⋅ξ= ∑

=

N

jjnmjjnmj ss

1, (21)

где матрица, получившаяся в результате, является квадратной матрицей размером М × М.

Найдем для (21) математическое ожидание и дисперсию:

( ) [ ] ( ) ( )[ ] =

η⋅φ⋅ζ⋅ξ=τ ∫ ∑

=

0 1

1 tdtssLN

jjnmjjnmjmn

[ ] ( ) ( )[ ] [ ] [ ] ;~*10 1

ν+µ⋅ζ⋅ξ=

ηφ⋅ζ⋅ξ= ∑∫ ∑

=

=

N

jjnmjjnmj

N

jjnmjjnmj tdttt (22)

( ) [ ] ( ) ( )[ ] ( )=τ−

η⋅φ⋅ζ⋅ξ=ς ∫ ∑

=

− 2

0

2

1

1mn

N

jjnmjjnmjmn dttssL

[ ] ( ) ( )[ ] ( ) [ ] [ ] ,~*1

22

0

2

1

τ−υ+ρ⋅ζ⋅ξ=τ−

ηφ⋅ζ⋅ξ= ∑∫ ∑

=

=

N

jmnjnmjjnmjmn

N

jjnmjjnmj dtttt (23)

где µmj, νjn - математические ожидания исходных плотностей распределе-ния; τmn - mn-й элемент итоговой матрицы математических ожиданий плотностей распределения; ρmj, υjn - дисперсии исходных плотностей рас-пределения; ςmn - mn-й элемент итоговой матрицы дисперсий плотностей распределения; +~ - знак суммирования, введенный для того, чтобы отли-чить его от общего суммирования, проводимого под знаком Σ.

Приведем (22) и (23) к аналитическим матричным выражениям:

[ ] [ ] ( ) ( )[ ] ( ) ( )[ ] =ν+µ⊗ζ⋅ξ=

ν+µ⋅ζ⋅ξ= ∑

=nmmnnmmn

N

jjnmjjnmj

~~1

τ

( ) ( );~ νµζξ +⊗⋅= (24)

[ ] [ ]

( ) ( )[ ] ( ) ( )[ ] ( ) ( )=τ⊗τ−υ+ρ⊗ζ⋅ξ=

=

τ−υ+ρ⋅ζ⋅ξ= ∑

=

mnmnmnmnmnmn

N

jmnjnmjjnmj

~

~1

( ) ( ) ,~ ττυρζξ ⊗−+⊗⋅= (25)

Известия ТулГУ. Технические науки. 2013. Вып. 3

312

где ⊗ - знак прямого произведения матриц; +~ - знак матричной операции, выполняемой по правилам умножения матриц, в которой операция умно-жения заменена на операцию суммирования; τ, µ, ν - числовые матрицы математических ожиданий; ς, ρ, υ - числовые матрицы дисперсий;

=

MMM

M

ττ

ττ

1

111......

τ ;

=

MNM

N

µµ

µµ

1

111......

µ ;

=

NMN

M

νν

νν

1

111......

ν ;

=

MMM

M

ςς

ςς

1

111......

ς ;

=

MNM

N

ρρ

ρρ

1

111......

ρ ;

=

NMN

M

υυ

υυ

1

111......

υ .

Добавим к (24), (25) матрицу вероятностей π:

ζξπ ⋅=

=

MMM

M

ππ

ππ

...

...

...

1

111. (26)

Если матрицы ξ, µ, ρ характеризуют вероятностные и временные характе-ристики ЭППМ после u переключений, матрицы ζ, ν, υ характеризуют ве-роятностные и временные характеристики одного переключения, то мат-рицы π, τ и ς характеризуют вероятностные и временные характеристики (u+1)-го переключения. Таким образом, получены общие матричные ана-литические выражения (24), (25), (26), которые позволяют получить вре-менные характеристики (16), (19) по временным и вероятностным харак-теристикам полумарковской матрицы h(t).

Математические ожидания и дисперсии плотностей распределения ( ) ( )( )tf kznkzm

ˆ могут быть определены по зависимостям

( ) ( )( )[ ] ( )

∑∞

=

=

+

′⊗′=

1

1

~

ˆ

w

wk

wkzn

wk

wkkzm

kznkzm

IIT

p

Tp θ

; (27)

( ) ( )( )[ ] ( )

( ) ( )2

1

1

~

ˆˆkznkzm

w

wk

wkzn

wk

wkkzm

kznkzm TII

D −′

′⊗′=

∑∞

=

=

+

p

Dp θ

, (28)

где kp′ , kT ′ , kD′ - матрицы числовых характеристик взвешенных плотностей распределения, получаемых из полумарковской матрицы h(t);

( )[ ]dtsL kk hp ′=′ ∫

∞−

0

1 ; (29)

( ) ( ) ( )[ ]( ) ( )

′=′∫∞

θ

θ

kznkkzm

kznk

kzm

k II

tdtIsIL

p

hT 0

1

; (30)

Информационная безопасность и информационные технологии

313

( ) ( ) ( )[ ]( ) ( )

kkkznkkzm

kznk

kzm

k II

dttIsILTT

p

hD ′⊗′−

′=′∫∞

θ

θ

0

21

. (31)

Используя зависимости (29)-(31) и применяя выражение (19) для оценки вероятности развития алгоритма по данной траектории, можно оценить предельные и среднее значение времени работы данного алгорит-ма, воспользовавшись правилом трех сигм [21]:

σ3min −= TT ,

σ3max += TT , (32)

2maxmin TT

Tcp+= ,

где D=σ . Таким образом, представлена методика оценки времени выполне-

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

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

Список литературы

1. Morgan D.E. and Campbell J.A. An answer to a user's plea? // Pro-

ceedings of the 1973 ACM SIGME symposium (SIGME '73). New York, 1973. P. 112-120.

2. Thomas E. Bell. 1974. Computer performance variability. In Proceed-ings of the National computer conference and exposition. New York, 1974. P. 761-766.

3. Феррари Д. Оценка производительности вычислительных систем. М.: Мир, 1981.

4. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. СПб.: БХВ-Петербург, 2002. 608 с.

5. Aho А.V., Sethi R., Ullman J.D. Compilers: Principles, Techniques, and Tools. NY: Addison-Wesley, 1986.

Известия ТулГУ. Технические науки. 2013. Вып. 3

314

6. Allen F. E. Control flow analysis // Proceedings of a Symposium on Compiler Optimization. 1984. Val. 5. N 7. P. 1-19.

7. Ivutin A., Daragan E. Methods of identifying information dependen-cies in the software // Proc. of Тhe International Congress on Information Tech-nologies -2012 (ICIT-2012) June 6-9 2012, Saratov: SSTU, 2012. P.65.

8. Ивутин А.Н., Дараган Е.И. Построение схемы распараллеливания последовательного алгоритма программы // Известия ТулГУ. Технические науки. Вып. 5. Тула: Изд. ТулГУ, 2012. С. 101-109.

9. Королюк В.С., Турбин А.Ф. Полумарковские процессы и их при-менения. Киев: Наукова думка, 1976.

10. Привалов А.Н., Ларкин Е.В. Моделирование информационных процессов тренажерных систем: Концепция, методология, модели. Saar-brucken Deutchland: LAP LAMBERT Academic Publishing GmbH & Co., 2012.

11. Ярлыков М.С., Миронов М.А. Марковская теория оценивания случайных процессов. М.: Радио и связь, 1993.

12. Gotz N. et al. Multiprocessor and Distributed System Design : The Integration of Functional Specification and Performance Analysis Using Sto-chastic Process Algebras // Lecture Notes in Computer Science. 1993. Vol. 729. P. 121–146.

13. Игнатьев В.М., Ларкин Е.В. Сети Петри-Маркова. Тула: ТулГУ, 1997. 163 с.

14. Ларкин Е.В. Имитационное моделирование отказов-вос-становлений с применением сетей Петри-Маркова / Вестник компьютер-ных и информационных технологий. 2005. № 12. С. 35 - 38.

15. Котов В.Е. Сети Петри. М.: Наука, 1984. 160 с. 16. Васильев В.В., Кузьмук В.В. Сети Петри, параллельные алго-

ритмы и модели мультипроцессорных систем. Киев: Наукова думка, 1990. 212 с.

17. Ларкин Е.В. Формирование сетей Петри-Маркова для модели-рования параллельных систем // Математическое и программное обеспече-ние вычислительных систем. М.: Горячая линия-Телеком, 2006. С. 4 - 8.

18. Ларкин Е.В., Сабо Ю.И. Сети Петри-Маркова и отказо-устойчивость авионики. Тула: Изд-во ТулГУ, 2004. 204 с.

19. Привалов А.Н., Ларкин Е.В. Проектирование программного обеспечения вычислительных средств тренажерных систем. Тула: Изд-во ТулГУ, 2010. 259 с.

20. Leo J. Scanlon IBM PC & XT assembly language a guide for pro-grammers Enhanced and enlarged. New York: Brady Communications Co., 1985

21. Grimmett G. R., Stirzaker D. R. Probability and Random Processes. 2nd Edition. Oxford: Clarendon Press, 1992.

Информационная безопасность и информационные технологии

315

Ивутин Алексей Николаевич, канд. техн. наук, доц., [email protected], Россия, Тула, Тульский государственный университет,

Ларкин Евгений Васильевич, д-р техн. наук, проф., зав. кафедрой,

[email protected], Россия, Тула, Тульский государственный университет

PREDICTING OF ALGORITHM’S EXECUTION TIME

A.N. Ivutin, E.V. Larkin A static evaluation of the algorithm’s run-time on any architecture, based on the

representation of an imperative algorithm in the equivalent Petri-Markov-net with preliminary abstraction awareness-dependent operators and use of statistical information about the incoming data are proposed.

Key words: digital system, algorithm, semi-Markov process, Petri-Markov net, exe-cution time.

Ivutin Alexey Nicolaevich, candidate of technical science, docent,

[email protected], Russia, Tula, Tula State University, Larkin Evgeniy Vasilevich, doctor of technical science, professor, the head of a

chair, [email protected], Russia, Tula, Tula State University

УДК 62.50

ИСПОЛЬЗОВАНИЕ ФАЗОВОЙ СОСТАВЛЯЮЩЕЙ СПЕКТРА СИГНАЛА ДЛЯ ИДЕНТИФИКАЦИИ ДВИЖЕНИЯ

А.А. Аршакян, С.А. Будков, Е.В. Ларкин

Разработана методика идентификации движения объекта по сцене. Показа-

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

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

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


Recommended