Научная статья на тему 'Распределенные вычисления при ограниченном числе копий программного ресурса'

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

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

Текст научной работы на тему «Распределенные вычисления при ограниченном числе копий программного ресурса»

влияет на время изменения дерева. Стоит учитывать, что увеличение числа статических примитивов увеличивает время трассировки, что также сказывается на графике «изменение дерева и трассировка».

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

Литература

1. Bikker J. RayTracing: Theory & Implementation. 2005. URL: http://www.devmaster.net/articles /raytracing_series/ part7. php (дата обращения: 2.06.2010).

2. State of the Art in Ray Tracing Animated Scenes. In State of the Art Report / WALD I., [et al.] // Proceedings of the Eurographics Symposium on Rendering. 2007.

3. Yoon S.-E., Curtis S., Manocha D. Ray Tracing Dynamic Scenes using Selective Restructuring // Proceedings of the Eurographics Symposium on Rendering. 2007.

4. Фролов В. Ray-tracing.ru: 3d движок, трассировка лучей в реальном времени, интерактивная трассировка лучей. URL: http://www.ray-tracing.ru (дата обращения: 17.06.2010).

УДК 681.3.06

РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ ПРИ ОГРАНИЧЕННОМ ЧИСЛЕ КОПИЙ ПРОГРАММНОГО РЕСУРСА

Н.С. Коваленко, д.ф.-м..н. (Белорусский государственный экономический университет, г. Минск); П.А. Павлов, кф.-м.н. (Полесский государственный университет, г. Пинск, [email protected])

Решаются задачи нахождения времени выполнения распределенных конкурирующих процессов при ограниченном числе копий программного ресурса в условиях неограниченного и ограниченного параллелизма.

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

Во многих приложениях, связанных с проектированием многопроцессорных систем (МС), вычислительных комплексов, системного и прикладного ПО [1-2], оптимальной организации параллельных вычислительных процессов, значительный интерес представляют задачи, в которых множество конкурирующих процессов могут использовать не одну, а несколько копий структурированного программного ресурса (ПР). Случай, когда в общей памяти МС имеется одна копия ПР, с различных точек зрения описан в работах [3-5]. При этом были решены задачи нахождения минимального общего времени выполнения распределенных конкурирующих процессов, использующих структурированный на блоки ПР в различных режимах взаимодействия процессов, процессоров и блоков, получены критерии эффективности и оптимальности структурирования ПР, проведен сравнительный анализ режимов взаимодействия процессов, процессоров и блоков, решен ряд оптимизационных задач по расчету числа процессов, минимального числа процессоров и др. Изучение этих и других задач, относящихся к оптимальной организации параллельных вычислений, приобретает особую актуальность, когда в общей памяти МС одновременно могут размещаться две или более копий (с) ПР. Такое обобщение носит принци-

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

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

Математическая модель распределенных вычислений при ограниченном числе копий ПР

Конструктивными элементами для построения математических моделей систем распределенных вычислений являются понятия процесса и ПР.

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

разными процессорами [2]. Для ускорения процессы могут обрабатываться параллельно, взаимодействуя путем обмена информацией. Такие процессы называются кооперативными, или взаимодействующими.

Ресурсом являются любые объекты, которые используются для выполнения процесса. Реентерабельные (многократно используемые) - это ресурсы, одновременно используемые несколькими вычислительными процессами. Для параллельных систем характерна ситуация, когда одну и ту же последовательность блоков или ее часть необходимо выполнять многократно. Такую последовательность будем называть программным ресурсом, а множество соответствующих процессов - конкурирующими.

Математическая модель распределенной обработки конкурирующих взаимодействующих процессов при ограниченном числе копий ПР включает в себя: p процессоров МС ф>2), которые имеют доступ к общей памяти; п распределенных конкурирующих процессов (п>2); s блоков структурированного на блоки ПР ^>2); матрицу T=[tij], 1 = 1,п, ] = 1,« , времен выполнения блоков ПР распределенными взаимодействующими конкурирующими процессами; c копий (2<c<p) структурированного на блоки ПР, которые могут одновременно находиться в оперативной памяти, дос-

Р

тупной для всех p процессоров, причем

> 2;

параметр е (е>0), характеризующий время дополнительных системных расходов, связанных с организацией конвейерного режима использования блоков структурированного ПР множеством взаимодействующих конкурирующих процессов при распределенной обработке.

Также предположим, что число процессов п кратно числу копий c структурированного ПР, то есть n=mc, m>2, и что взаимодействие процессов, процессоров и блоков ПР подчинено следующим условиям:

ни один из процессоров одновременно не может обрабатывать более одного блока;

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

— обработка каждого блока ПР происходит без прерываний;

— распределение блоков ПР по процессорам для каждого из процессов i=lc+q, 1 = 1,п, ¡>0, ц = 1,с, осуществляется циклически по правилу:

блок с номером ]

'=к [ Р]

+ г, ] = 1,« , ^0,

г = 1,

распределяется на процессор с номе-

ром q+c(r-1).

Введем следующие режимы взаимодействия процессов, процессоров и блоков с учетом наличия c копий ПР:

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

Qj, ] = 1,«, определяется наличием c процессоров и готовностью этой группы блоков к выполнению (программный блок считается готовым к выполнению, если он не выполняется ни на одном из процессоров);

— первый синхронный режим, обеспечивающий линейный порядок выполнения блоков ПР внутри каждого из процессов без задержек, то есть для каждого процесса i=lc+q, 1 = 1,п, ¡>0, ц = 1,с, момент завершения выполнения ^го блока на q+c(r-1)-м процессоре совпадает с моментом начала выполнения следующего (]+1)-го блока на

процессоре, ] = 1,« -1, г = 1,

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

На рисунках 1-3 представлены диаграммы Ганга, иллюстрирующие выполнение п=4 распределенных конкурирующих процессов, использующих c=2 копии структурированного ПР в МС с p=7 процессорами в рассмотренных выше режимах и с заданной матрицей времени выполнения блоков ПР с учетом дополнительных системных 3 1 4"

расходов Те =

0 1 5 5 4 5 6 7 § 9 ТГТ! ' та (р, п, Рис. 1. Асинхронный режим

01 234567 89 10 11 T„'(p, n, s,c) Рис. 2. Первый синхронный режим

▲ '23 «43

в «13 . «33 „

„ «22 „ «42 „

. «12 . «32 .

'21 , «41

«11 I«31 •

■ Ь

0123456789 10 11 Т2(р, и, в,с)

Рис. 3. Второй синхронный режим

Определение 1. Система п распределенных конкурирующих процессов называется неоднородной, если время выполнения каждого из блоков ПР Ох, О2, ..., Qs зависит от объемов обрабатываемых данных и/или их структуры, то есть разное для разных процессов.

Определение 2. Систему распределенных конкурирующих процессов будем называть однородной, если время выполнения О^го блока каждым из 1-х процессов одинаково, то есть i = 1,п , j = М.

Определение 3. Систему конкурирующих процессов будем называть одинаково распределенной, если время ^ выполнения каждого из блоков j = 1,« , ПР каждым из 1-х процессов совпадает и равно ^ для всех i = 1,п, то есть справедлива цепочка равенств ^1=^=... для всех i = 1,п .

Время выполнения неоднородных

распределенных процессов в асинхронном режиме при достаточном числе процессоров

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

ченного

(s 4 Р ])

и ограниченного

(s >[рD

параллелизма.

Пусть имеется система п=тс, т>2, 2<с<р, неоднородных распределенных конкурирующих процессов, причем число блоков 8 структурированного ПР не превосходит числа групп процессоров по с процессоров в каждой, то есть

2 ^ s ^

[ Р ]•

В этом случае без ограничения общ-

ности можно считать, что каждый О^й, j = 1,« , блок 1-го процесса, где 1=1с+д, i = 1,п, 1>0, я = 1,с,

закреплен за ^+с(г-1))-м процессором, г = 1, —

с

Тогда для выполнения п процессов достаточно

Г р 1

взять р = 1 — I8 процессоров, а остальные

Р -

8 процессоров не будут задействованы.

Пусть Те = [Iе ] - пх8-матрица времени вы-

ч

полнения блоков ПР каждым из 1-х процессов с учетом параметра е>0, где Iе = ^ +е, i = 1,п,

j = 1,8 . Для вычисления минимального общего времени Т^с (р, п, 8, с) можно воспользоваться функционалом задачи Беллмана-Джонсона, который в данном случае будет иметь вид

тас (р,п,«,с)=

^ и2

= т«? , 2Х(1-1)с,1 + 1)с,2 + •••

1<и! <112 <...<и5—! <т ^^ п п

т

+2 Со-Чс,. , (1)

где т = п, I;+(1- 1)С = Iч+а—цс +е , я =1 с,

1 = 1,т, j = 1,8 , а их, и2, ..., и8-1 - целые числа.

Пример 1. Рассмотрим интерпретацию формулы (1) на числовом примере. Пусть р=7, п=6, 8=3, с=2, а время выполнения блоков процессами зада-

з 1 41

но матрицей T =

Тогда т=3, следовательно, функционал (1) примет вид

Тнас (р = 7, п = 6,8 = 3, с = 2) =

и1 и2 3

= 1<т<аХ<3 2*Я+(1—1)2,1 + 2 1)2,2 + 2 ^+(1—1)2,3

1 2 1 = 1 1 = и 1 = и2

я = 12.

23

43

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

13

33

22

42

12

32

21

41

31

1) При q=1 имеем:

max

1Sut Su2 S3

1 tq+(i-1)2,1 + 1 tq+(i-1)2,2 + 1 tq+(i-1)2,3

= max

1£ut Su2 S 3

]X-1,1 +1Х-1,2 +]Ct2i-1,:

Если Ul=1, и = 1,3, если ^=2, ^=2,3, если Ul=3, U2=3, тогда

»2 з

+у ^ +У Iе

••21-1,1 т 12Ь1,2 т ^^ • 21—1,3

max

1SUj Su2 S3

l=Uj

1 2

Zts ts +Yt8 Yts +Yt8 +Yts

t2l-1,1 + 2 l2l-1,2 + 2 l2l-1,3' 2 l2l-1,1 + 2 l2l-1,2 + 2 l2l-1,3'

l=1 l=1 l=1 l=1 l=1 l=2

1 3 3 2 2 3

Zt8 +y t8 +y t8 yt8 +y t8 +y t8

l2l-1,1 + 2 l2l-1,2 + 2 l2l-1,3' 2 l2l-1,1 + 2 l2l-1,2 + 2 l2l-1,3'

l=1 l=1 l=3 l=1 l=2 l=2

2 3 3 3 3 3

It-+Zt^l-1,2+1t2l-1,3' It2l-1,1+1t2l-1,2+It2l-1,3

:1 l=2 l=3 l=1 l=3 l=3

t8 +18 +t8 +t8 +t8 t8 +t8 +t8 +t8 +t8

= max t*u +18>2 +13,2 +15,2 +15,3, t8,1 +13,1 +13,2 +13,3 +183,

t8 +18 +t8 +t8 +t8 t8 +t8 +t8 +t8 +t8

l1,1 3,1 T l3,2 T 5,2 l5,3' l1,1 3,1 T 5,1 5,2 5,3

3 +1 + 4 + 3 +1, 3 +1 + 3 + 3 +1, = max 3 +1 + 3 + 2 +1, 3 +1 + 3 + 3 +1, 3 +1 + 3 + 2 +1, 3 +1 + 3 + 2 +1

=max[12, 11, 10, 11, 10, 10]=12.

2) При q=2 имеем:

max

1SUj Su2 S3

1 tq+(l-1)2,1 +Z tq+(l-1)2,2 +Z tq+(l-1)2,3

тах

ix+Zx+zx

Если ^=1, » = 1,3, если ^=2, u1=2,3, u1=3, ^=3, тогда

max

1SU!Su2 S3

1 П,! + I *г2,,2 + feu, I tS2U + 112l,2 + I *2I,3 , l=1 l=1 l=1 l=1 l=1 l=2

Е^Д + ^tE2,,2 + feu, feu +2X2 + feu ,

l=1 l=1 l=3 l=1 l=2 l=2

2Пи + 2 П,2 + fen,, few + feu + 22*21,3

,l=1 l=2 l=3 l=1 l=3 l=3

t8 +18 +18 +18 +18 1" +18 +18 +18 +18

l2,1 + l2,2 + 12,3 + 14,3 + l6,3' 12,1 + l2,2 + t4,2 + l4,3 + l6,3'

18 +18 +18 +18 +18 t8 +18 +18 +18 +18

12,1 + l2,2 + l4,2 + l6,2 + l6,3 ' l2,1 + l4,1 + l4,2 + l4,3 + l6,3 '

t8 +18 +18 +18 +18 18 +18 +18 +18 +18

8 2,1 l4,1 4,2 l6,2 t 4,3' l2,1 l4,1 l6,1 l6,2 l6,3

2 + 2 +1 + 2 +1, 2 + 2 +1 + 2 +1,' = max 2 + 2 +1 + 4+1, 2 + 4+1 + 2 +1,

2 + 4 +1+4+1, 2 + 4+1+4+1 =max[8, 8, 10, 10, 12, 12]=12.

Следовательно, минимальное общее время выполнения п=6 неоднородных распределенных взаимодействующих конкурирующих процессов, использующих c=2 копии структурированного на s=3 блока ПР, в МС с p=7 процессорами в асинхронном режиме составит Тас (р, п,с) = 12 . При этом будут использованы 6 процессоров.

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

^ п

По заданным s, ^ т = — и матрице

с

Те= [1вч+(1-1)с,], ц = 1,с, 1 = 1,т, \ = 1,« , строим ^слойный вершинно-взвешенный граф ОС. Каждый q-й, ц = 1,с, слой графа ОС состоит из вершин ^¡^г 1 = 1,т, ] = 1,« , которые расположены в узлах прямоугольной mxs-решетки, причем ^ - входные вершины, ^^ - в^1ходные,

ц = 1,с, t=(m-1)c (рис. 4). Дуги в каждом слое q отражают линейный порядок выполнения блоков Qj, ] = 1,« , ПР каждым ^+0-1)0-^ процессом, ц = 1,с, 1 = 1,т , а также линейный порядок использования каждого блока всеми m процессами.

Рис. 4. Граф 0\

1Su Su S3

t8

Таким образом, выведем следующую теорему.

Теорема 1. Минимальное общее время выполнения п=тс, т>2, неоднородных распределенных конкурирующих процессов, использующих 2<с<р

копий структурированного на 2 < 8 <

Г? ]

блока

ПР с временем выполнения блоков с учетом дополнительных системных расходов [»е ], 1 = 1,п,

j = 1,8 , в МС с р,

> 2 , процессорами в асин-

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

г

Я = 1,с

п

т = —. с

(т—1)с,в -

Пример 2. Используя данные примера 1, найти минимальное общее время Т*с (р, п, 8, с), используя алгоритм нахождения критического пути в с-слойном вершинно-взвешенном графе Ос.

По заданным п=6, 8=3 и матрице Те строим 2-слойный (с=2) вершинно-взвешенный граф Ос (рис. 5). Каждый слой содержит ш8 вершин, где ш=п/с=3. Длина критического пути в графе равна 12, что совпадает с минимальным общим временем, полученным в примере 1.

"^ч^у--

Рис. 5. С-слойный вершинно-взвешенный граф ОС

Асинхронный режим выполнения распределенных конкурирующих процессов в условиях ограниченного параллелизма

Рассмотрим случай ограниченного параллелизма, то есть когда число блоков структурированного ПР больше числа групп по с процессоров

+ Г, к>1,

в каждой, то есть 8 > Р а II 5« Р

_ с _ с

1 < г <

Как и в случае с одной копией ПР в общей памяти МС множество из 8 блоков разобьем на (к+1)

[ 5]

блоков в каждой, за исключением

групп по

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

(к+1)-й группы, которая будет содержать г блоков. Тогда матрицу Те = [ге ], 1 = 1,п,

1,1 к " Р" + г1

1 _ с _ )

времени выполнения блоков

разбиваем на (к+1) подматрицу Т,е, 1 = 1,к +1 р

размерностью п х

каждая, за исключением

последней Т®+1, которая будет содержать при 8, не

Р с

кратном

только г столбцов, а остальные — г столбцов будут нулевыми. По каждой из

подматриц Т,е, 1 = 1,к +1, строим (к+1)-ю линейную диаграмму Ганта, каждая из которых отобра-

р

жает во времени выполнение очередных

бло-

ков структурированного ПР на с

процессорах

всеми п процессами, использующими ограниченное число с копий структурированного ПР. При г^0 (к+1)-я диаграмма будет отражать выполнение последних г блоков на сг процессорах. На рисунке 6 представлена диаграмма Ганта для МС с параметрами р=7, п=4, 8=3, с=2:

3 1 4 2 1 4 2 1"

грб

22113322 13311331 41231125

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

р

6 »26 »46

5 4 3 »13 »33 »16 »36

»22 »42 »25 »45 1 »28 »48

»12 »32 ¿3$ «»38

»21 »41 »24 »44 »27 »47

»11 »31 »14 »34 »17 »37

зо »

0 11 21 ТГ(р.п,8,с)

Рис. 6. Несовмещенная диаграмма Ганта

е

каждой из подряд идущих несовмещенных диаграмм Ганта. Однако это время можно сократить, если последовательно поблочно совмещать диаграммы Ганта, начиная со второй, по оси времени справа налево на максимально возможную величину, не нарушая технологические условия асинхронного режима. В результате совмещения получим результирующую совмещенную диаграмму Ганта (рис. 7).

Полученная структура результирующей совмещенной диаграммы Ганта определяется матрицей Т (2), которая состоит из подматриц ТЕ, ТЕ, ..., ТЕ+1. В матрице Т* учтены как все горизонтальные, так и все вертикальные связи между блоками, а также связи между блоками из разных диаграмм Ганта. Отметим также, что результирующая матрица Т имеет размерность

" Р"

(к + 1)п х (к +1)

является блочной, симмет-

ричной, верхней диагональной относительно второй диагонали, типа Ганкелевой порядка к+1

ггчЕ ггчЕ Т2 Аз гтчБ к+1

ггчЕ Т2 ггчЕ Т3 14 к+1 0

Т3 ггчЕ 14 ■ 0 0

ггчЕ Тк ггчЕ Тк+1 0 • ■ 0 0

ггчЕ Тк +1 0 0 • 0 0

Т" =

где ТЕ и ТЕ+1 - матрицы вида

Г Г

1,(1-1)[рЦ+1 1.(1"1)[р]+2

(2)

грЕ _

"

2,(1-1)[Р]+1 2,(1-1)[Р]+:

Тк+1

п,(1-1)[р]+ п,(1-1)[Р]+2

v г*

1'к[р]+1

1е г*

2,к[р]« 2*Н+2 г4с}

iе iе

п,к[р]+1 п,к[р]+2

1 = 1,к,

) ••■ О ) ••■ О

^ о

о

По матрице Т построим с-слойный вершинно-взвешенный граф ОС, аналогичный графу ОС. Вершинам каждого слоя q размерности Р"

(к + 1)т х (к +1)

графа ОС будут приписаны

веса (1-1>С,1

ч = 1,с , 1 = 1,(к + 1)т, 1 = 1,« .

Вершины будут являться входными, а

-1)с 5 - выходными, ч = 1,с . Выведем сле-

1Ч+((к+1)т-1)с^

дующую теорему.

к

¿3 »43 »26 »46

»13 »33 »16 »36

»22 »25 14, »28 »48

»12 »32 »15 13, »18 ц

»21 141 1,4 »44 »27 »47

147 »31 »14 »34 »17 »37 !

; ——_ь.

0 22 Та (р,п,

Рис. 7. Совмещенная диаграмма Ганта

Теорема 2. Минимальное общее время Тас (р, п,с) выполнения п, п>2, неоднородных

распределенных конкурирующих процессов, использующих линейно структурированный на «>2, блоков ПР, с временем выполнения блоков с учетом дополнительных системных расходов е>0, задаваемых матрицей ТЕ = ], 1 = 1,п, 1 = 1,« , в МС с р, р>2, процессорами и с>2 копиями струк-

турированного ПР

([Р]> 2) ■

в асинхронном ре-

жиме в случае неограниченного параллелизма Р "

« >

определяется длиной критического пу-

в конечную

ти из начальной вершины

С((к+1)т-1)с , Ч = 1,С , Графа О2 .

Пример 3. По значениям параметров диаграммы Ганта, изображенной на рис. 6, найти минимальное общее время Т*с (р, п,с), используя алгоритм нахождения критического пути в с-слой-ном вершинно-взвешенном графе ОС.

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

Так как

3, то 8 = « = к

+ г = 2 • 3 + 2 .

следовательно, к=2, г=2. Матрицу ТЕ разбиваем на подматрицы Т,Е, 1 = 1,3, размерностью 4х3 каждая. Матрица Т* будет иметь размерность

Т" =

(к+1) р _ с _ = 12 х 9 и следующ

"3 1 4" ~2 1 4" ~2 1 0

2 2 1 1 3 3 2 2 0

1 3 3 1 1 3 3 1 0

4 1 2 3 1 1 2 5 0

~2 1 4" _2 1 0" _0 0 0

1 3 3 2 2 0 0 0 0

1 1 3 3 1 0 0 0 0

3 1 1_ _2 5 0_ 0 0 0

_2 1 0" _0 0 0" ■0 0 0"

2 2 0 0 0 0 0 0 0

3 1 0 0 0 0 0 0 0

2 5 0 0 0 0 0 0 0

Построим по матрице T 2-слойный вершинно-взвешенный граф Ос (рис. 8). Длина критического пути равна 22.

ах^х^х^х^

ж а а а а а а а а а а а а а а а а а

^п /п А жп А /п жп А

ОООСКХ^УООО

А А А /п А А А А

^п А А А А А А А А

А т А А А т А гп А

/ц #1У А А л\ #1У А лч

а а а а а а а а а

Рис. 8. Граф G2

Время выполнения однородных и одинаково распределенных конкурирующих процессов

Согласно определению 2, систему распределенных конкурирующих процессов будем считать однородной, если время выполнения каждого блока Qj, ] = 1,« , каждым из процессов равное, то есть •е = ^ , 1 = 1,п, \ = 1,8 .

На рисунке 9 представлена диаграмма Ганта, иллюстрирующая выполнение однородных распределенных конкурирующих процессов при ограниченном числе копий ПР в МС с параметрами

3 1 4"

p=7, п=4, s=3, c=2, Те =

3 14 3 14 3 1 4]

Оценим общее время выполнения п однородных распределенных конкурирующих процессов в асинхронном режиме, использующих c копий структурированного ПР. Пусть ^, ^, ..., 1е) -длительности выполнения каждого из блоков Qj,

] = 1,«, ПР с учетом накладных расходов е, •е= ^ +е, ] = 1,« . Обозначим длительность выполнения всего ПР каждым из процессов через

Т =1 .

¡=1

Покажем, что в этих условиях вычисление общего времени Тоас (р, п,с) в случае неограниченного параллелизма сводится к нахождению общего времени выполнения однородных распределенных процессов при одной копии структурированного ПР. При n=mc, m>2, 2<е^, выполнение c копий структурированного ПР в асинхронном режиме равносильно выполнению c групп по m процессов, конкурирующих за использование

одной копии ПР на

[ с ]

процессорах.

Из формулы вычисления общего времени выполнения п однородных конкурирующих процессов, использующих одну копию структурированного ПР с учетом того, что n=mc, m>2, 2<е^, получаем

"р с

Тоас (р,тс,«,с) = Тоас ^

= Т« + (т - 1)тах1е.

е 1< '

,т,«,1 1 =

(3)

Для доказательства формулы (3) воспользуемся функционалом (1) задачи Беллмана-Джонсона, который для систем однородных конкурирующих процессов примет вид Т0ас (р,п,«,с) =

тах

1<» <Ц2 <...<и5-1 <т

"1 "2 т

2+... + £ 1е

Е1е + (т — 1)тах1 е,

п е . :—

где т = - , • 1 = ti +е, j = 1,« , а щ, U2, ..., и8_1 -с J J

целые числа.

0! 234 567 89 !0!!!2 ^ (р, п, ,Тс) Рис. 9. Асинхронный режим - однородные процессы

В случае, когда 8 >

к [ Р]

к>1, мат-

рица времени выполнения блоков ПР строится аналогично матрице T . Отличие в том, что в каждой из подматриц Т,е, 1 = 1,к, матрицы X* все строки совпадают. Тогда, по аналогии с теоремой 2, общее время Тс (р, п, 8, с) выполнения п распределенных однородных конкурирующих процессов при ограниченном числе копий ПР определяется длиной критического пути из начальной вершины в конечную соответствующего сетевого графа.

г -, г т Гр

с

Если 8 > р , 8 = к р

_ с _ с

+ г, к>1, 1 < г <

то последняя подматрица Т*+1 матрицы Т будет

содержать

г нулевых столбцов.

Определение 4. Однородное структурирование ПР на 8 блоков с временем выполнения

(^, ^, ..., ^), 2 18 = Т, будем называть равно-¡=1

мерным, если ^ = 1е =... = 1е = 1е.

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

> ш1п{ш,8}, < ш1п{ш,8},

Трас(р,п,8, с) =

(ш + 8 1 Р с

|кш + Р с - 1|е, р с

s = к Р с _ , к > 1,

((к + 1)ш + г -1)1е, р с _

8 = к Р с + г, к > 1,

< ш1п{ш,8},

р

с

Рассмотрим систему одинаково распределенных конкурирующих процессов. Время выполнения всех ее блоков с учетом накладных расходов е каждым из 1-х процессов совпадает и равно ^ , то есть справедлива цепочка равенств 1е1=1е2=...=1*8=1* для всех 1=1,п.

На рисунке 10 представлена диаграмма Ганта, иллюстрирующая выполнение одинаково распределенных конкурирующих процессов в МС с па-

3 3 3"

раметрами р=7, п=4, 8=3, с=2, Те

4 4 4 2 2 2 111

0 1 2 3 4 5 6 7 8 9 10 11 12

О Р, п, 3, с)

Рис. 10. Асинхронный режим - одинаково распределенные процессы

Г Г Р "П

случае неограниченного I 8 < — I параллелизма.

I Iс ^

ш

Обозначим через ТЕЧ = 2 1 е+а_1)с суммарное

1=1

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

время выполнения каждого из блоков ] = 1,8 , всеми т процессами из ч-й группы, а максимальное время выполне-

^=шахе(1-цс

ния блока из этой группы, ц = 1,с. Справедлива

следующая теорема.

Теорема 3. Минимальное общее время выполнения п, п>2, одинаково распределенных конкурирующих процессов, использующих структурированный на 8, 8>2, блоков ПР в МС с р, р>2, процессорами в асинхронном режиме при ограниченном числе копий ПР составляет величину

Тс (р, п, 8, с), равную

Т* + (8 - 1)1*„ при 8 <

Торс (р,",8,с)=шах

р , но Т* < р

_ с _ _ с _

- 1 IСа* при 8 = к

(к + 1)Т* + (г -1)1* „ при 8 = к

к > 1, 1 < г <

к > 1,

+ г,

р и Т4 > р

_ с _ _ с _

Для доказательства рассмотрим сначала слу-

чай, когда 8 <

- -

р или 8 > р , но Те4 < Р

_ с _ _ с _ _ с _

1*

Воспользуемся функционалом (1) задачи Беллма-на-Джонсона, который для систем одинаково распределенных конкурирующих процессов примет вид Тоарс (р, п, 8, с) =

шах

1 <1 <112 <...<ы5-1 <ш

21*+(1-1)с +2^+0-1)с +.

или 8 >

кТ* +

и Т,4 >

+ 2 t

q+(i-1)c

= Tq + (s - 1)maxtq+(i-1)c,

где m = - , tq+(i-i)c = tq+(i-,)c +E, q =1,c, i =1,m ,

u15 u2, ..., us-1 - целые числа.

Рассмотрим далее случай, когда s = k

k>1, и Tq >

tq ах. Вычисление общего времени

ТС (P,n,s, с) с помощью функционала задачи Беллмана-Джонсона приводит к формуле ТС (P,n,s,c) =

max

1.p J-1

2 ^q+(i-i)c + 2 ^q+(i-i)c + •

km

+ 2 *q+(i-1)c

i=U[P]- .

= kTq +

-11 tq .

ЗдесЬ tq+(i-1)c+km = tq+(i-!)c , q = 1С , i = 1,m .

В случае, когда s = k .P] + r, k>1, 1 ^ r <

и Tq >

Си, вычисление общего времени с

помощью функционала задачи Беллмана-Джонсона приводит к третьей формуле для вычисления

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

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

Литература

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

2. Топорков В.В. Модели распределенных вычислений. М.: Физматлит, 2004.

3. Иванников В.П., Коваленко Н.С., Метельский В.М. О минимальном времени реализации распределенных конкурирующих процессов в синхронных режимах // Программирование. 2000. № 5. С. 44-52.

4. Павлов П.А. Оптимальность структурирования программных ресурсов при конвейерной распределенной обработке // Программные продукты и системы. 2010. N° 3. С. 76-82.

5. Kapitonova Yu.V., Kovalenko N.S., Pavlov P.A. Optimality of systems of identically distributed competing processes // Cybernetics and Systems Analysis. NY: Springer. 2006, pp. 793-799.

УДК 519.688:004.942:544.431.2

МЕТОД ОЦЕНКИ КОНСТАНТ НЕЛИНЕЙНЫХ КИНЕТИЧЕСКИХ МОДЕЛЕЙ МНОГОСТАДИЙНЫХ ХИМИЧЕСКИХ РЕАКЦИЙ

(Работа выполнялась в рамках ФЦП «Научные и научно-педагогические кадры инновационной России»

на 2009-2013 гг., гос. контракт П1550)

Е.В. Писаренко, к.т.н.

(Российский химико-технологический университет им.. Д.И. Менделеева, г. Москва,

еир1эагепко@т-аИ-ш)

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

Ключевые слова: кинетика, идентификация констант, планирование эксперимента.

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

тов [1]. Следовательно, необходимы кинетические модели, с помощью которых можно с высокой точностью рассчитать концентрацию всех этих продуктов. Для построения подобных моделей не-

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