авторефераты диссертаций БЕСПЛАТНАЯ БИБЛИОТЕКА РОССИИ

КОНФЕРЕНЦИИ, КНИГИ, ПОСОБИЯ, НАУЧНЫЕ ИЗДАНИЯ

<< ГЛАВНАЯ
АГРОИНЖЕНЕРИЯ
АСТРОНОМИЯ
БЕЗОПАСНОСТЬ
БИОЛОГИЯ
ЗЕМЛЯ
ИНФОРМАТИКА
ИСКУССТВОВЕДЕНИЕ
ИСТОРИЯ
КУЛЬТУРОЛОГИЯ
МАШИНОСТРОЕНИЕ
МЕДИЦИНА
МЕТАЛЛУРГИЯ
МЕХАНИКА
ПЕДАГОГИКА
ПОЛИТИКА
ПРИБОРОСТРОЕНИЕ
ПРОДОВОЛЬСТВИЕ
ПСИХОЛОГИЯ
РАДИОТЕХНИКА
СЕЛЬСКОЕ ХОЗЯЙСТВО
СОЦИОЛОГИЯ
СТРОИТЕЛЬСТВО
ТЕХНИЧЕСКИЕ НАУКИ
ТРАНСПОРТ
ФАРМАЦЕВТИКА
ФИЗИКА
ФИЗИОЛОГИЯ
ФИЛОЛОГИЯ
ФИЛОСОФИЯ
ХИМИЯ
ЭКОНОМИКА
ЭЛЕКТРОТЕХНИКА
ЭНЕРГЕТИКА
ЮРИСПРУДЕНЦИЯ
ЯЗЫКОЗНАНИЕ
РАЗНОЕ
КОНТАКТЫ


Pages:     | 1 || 3 |

«ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ "МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ ...»

-- [ Страница 2 ] --

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

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

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

В гомогенных ГРИД-системах рассылка Q пакетов проводится по Cneed вычислительным узлам ( Q Cneed ) и в случае, если сервер, разослав первую очередь пакетов, будет ожидать возвращения всех результатов, то время TA на расчет этапа будет выражаться формулой [47]:

Q 1, Q Cmax TA = t +t 0, Q = 0, Cmax (2.8) C max где квадратными скобками обозначена целая часть от выражения, а фигурными - дробная. Q - количество пакетов, Cmax - общее количество вычислительных узлов, t - время расчета одного пакета. Зависимость времени расчета этапа от количества пакетов отражена на Рис. 2.3.

Рис. 2.3. Иллюстрация зависимости времени расчета этапа задачи от количества пакетов при t=1, Cmax= Критерий распределения этапа на Cneed узлов:

c :[ 1,...,C max ] S ( 0, c, t, e, r, n ) max.

Введем обозначение r q et, а так же примем число каналов обработки запросов n=1. Тогда:

(2.9) S( 0, c,t,e, r,1 ) = ;

1k + + q ( 1 + p(qc,1 ) m(qc,1 )) ct q 2c 1 1 ( 1 qc) m(qc,1 ) = ;

(2.10) q 2c 1 + qc + max( 1 qc,0 ) При qc 1, длина очереди к серверу составит:

q 2c m(qc,1 ) =. (2.11) 1 qc Вероятность возникновения очереди составит:

(qc)h h!

p(qc,1 ) = 1 (qc)1+1 ;

k (qc) k! 1!(1 qc) h=o + k= p(qc,1) =1 1 qc + 2 2 ;

qc qc 1+ qc+ 1+ qc+ 1 qc 1 qc p ( qc,1 )= q 2 c 2. (2.12) Таким образом, формула (2.6) примет вид:

(2.13) S homogeneous ( 0, c,t,e, r,1 ) = ;

q 2c 1k + + q 1 + q 2 c 2 1 qc ct S homogeneous te max : c =.

c 2r Если учесть, что между этапами меняются только значения e и t, то количество вычислительных узлов, дающее наибольший прирост ускорения вычислений, будет определяться, как [47, 55, 57]:

2 r 1, t e 2 r 2 r e chomogeneou (t, e, r, Cmax ) = t, t [ Cmax].

,..., (2.14) s 2r e e 2 r Cmax, t e Cmax Использование такого количества вычислительных узлов по сравнению с использованием всех вычислительных узлов при различных входных параметрах ГРИД-системы отражено на Рис. 2.4 и 2.5.

Рис. 2.4. Иллюстрация ускорения вычислений при использовании 1) всех вычислительных узлов;

2) количества вычислительных узлов согласно (2.14) (a=0.2, k=0.5, t=70, e=30000, r=30000, n=1) Рис. 2.5. Иллюстрация ускорения вычислений при использовании 1) всех вычислительных узлов;

2) количества вычислительных узлов согласно (2.14) (a=0.2, k=0.5, t=100, e=3000, r=30000, n=1).

2.5. Метод оценки скорости параллельной обработки в ГРИД системах гетерогенного типа Для анализа расчетов в гетерогенных ГРИД-системах введем понятие единицы вычислительной мощности узла Под «N».

вычислительной мощностью узла N [ед./сек] будем понимать количество вычисленных одним узлом эталонных пакетов в секунду. Под эталонным пакетом здесь понимается один из пакетов в вычисляемой задаче, относительно которого будут оцениваться остальные пакеты и вычислительные узлы. Таким образом, каждый узел предоставляет собой некоторое количество единиц вычислительной мощности в единицу времени, а каждый пакет требует некоторое количество единиц вычислительной мощности на решение. Задача может быть представлена в виде набора пакетов Q(N), а ГРИД-система — в виде набора вычисленных узлов C(N). Обе функции могут описывать как узлы/пакеты по отдельности, так и общее количество для указанной вычислительной мощности. Для удобства описания в дальнейшем предположим, что функции Q(N) и C(N) описывают каждый узел, а не суммарное количество узлов вычислительной мощности N [47, 53].

Критерием, определяющим минимальное время на вычисления всех пакетов, является условие:

Qi ( N ) C j ( N ) 0, где i — элемент из множества всех пакетов, j — элемент из множества свободных клиентов.

Общее время вычисления этапа составит:

Qall count Qi, Tstage = t i=1, j[1,...,Call count ] C j где t – время вычисления эталонного пакета (сек) (относительно которого ведутся оценки вычислительной мощности узлов и пакетов);

Qall – общее количество пакетов (шт.);

Call-count – общее количество count вычислительных узлов (шт.).

Если учесть время на задержки в ГРИД-системе, то общее время вычисления этапа составит [47, 48]:

Qall count t + k + r 1+ p z c, r,Qi t, n m z c, r,Qi t, n Qi, Tstage = e e C j e i= j [1,..., Call _ count ], Qi ( N ) C j ( N ) 0, где t – время вычисления эталонного пакета (сек) (относительно которого ведутся оценки вычислительной мощности узлов и пакетов);

Qall – общее количество пакетов (шт.);

Call-count – общее количество count вычислительных узлов (шт.);

k – задержка перед началом обмена (сек);

r – объем пакета (бит);

e – скорость передачи со стороны сервера (бит в секунду).

Критерий распределения этапа на Cneed узлов такой же, как и в случае гомогенных ГРИД-систем:

c :[ 1,...,C max ] S ( 0, c, t, e, r, n ) max r Обозначим q, а так же примем число каналов обработки et запросов n=1. Тогда:

S( 0, c,t, e, r,1 ) = Q ;

(2.15) Q all count 1 k + + q ( 1+ p(qc,1 ) m(qc,1 )) i Cj c t i= q 2c 1 1 ( 1 qc) m(qc,1 ) = ;

(2.16) q 2c 1+ qc + max( 1 qc,0 ) При qc 1, длина очереди к серверу составит:

q 2c m(qc,1 ) =. (2.17) 1 qc Вероятность возникновения очереди составит:

(qc)h h!

p(qc,1 ) = 1 1 ;

(qc)k (qc)1+ k! + 1!( 1 qc) h=o k= ;

1 qc p(qc,1 ) = 1 + q 2c q 2c 1+ qc + 1+ qc + 1 qc 1 qc p(qc,1 ) = q 2c 2. (2.18) Подставим значения (17, 18) в формулу (2.6).

S heterogeneous ( 0, c,t,e, r,1 ) = q 2 c 2 Qi 1 k Qall count + + q 1 + q 2 c 1 qc C j c t i= S heterogeneous Ci t e Qall count.

max : c = Q c 2r j i= Если учесть, что между этапами меняются только значения e и t, то количество вычислительных узлов, дающее максимальный прирост ускорения вычислений, будет определяться, как:

2 r 1, t Qall-count C e i i =1 Q j Qall-count e Ci 2 r 2 r i =1 Q j Cheterogeneous (t, e, r, Cmax, C( N ),Q( N ),Qallcount ) = t, t [ Qall-count,..., Qall-count Cmax ];

2r C C e i e i i =1 Q j i =1 Q j 2 r C, t Cmax max Qall-count Ci e i =1 Q j j [1,...,Call count ], |Qi (N ) Ci (N )| 0.

2.6. Анализ производительности вычислительных узлов с многоядерными процессорами Если вычислительный узел представляет собой систему с многоядерным процессором, то появляется дополнительный параметр в виде количества ядер в вычислительном узле, влияющий на характеристики вычислительного узла и ГРИД-системы в целом.

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

P (c) = c. (2.19) Возможны вариации формулы но они не вносят (2.19), существенных изменений.

Ускорение вычислений для нескольких симметричных многоядерных процессоров в общем случае составит:

S=, (1 a ) q a + P(q) P(q) c (2.20) где а - доля последовательных вычислений, q - количество ядер в процессоре, с - количество процессоров (вычислительных узлов).

Если применить оценку (2.20) к ГРИД-системам, то ускорение вычислений (2.6) примет вид:

, (2.21) S(a,c, k,t, e, r,n, q) = r r a q r k + ( 1 a) P ( q ) c + t + e t 1+ p z c, e,t, n m z c, e,t,1 P( q) где q - количество ядер в процессоре вычислительного узла, P функция оценки производительности при последовательных вычислениях от количества ядер (19).

Ускорение расчетов в ГРИД согласно зависимости (2.21) проиллюстрировано на Рис.2.6. В качестве примера для построения кривых 1-3 взяты вышеприведенные параметры (см. раздел 2.2).

Рис. 2.6. Иллюстрация ускорения расчетов по (2.21). 1 - q=1;

2 - q=5;

3 q=40.

Рис. 2.7. Иллюстрация ускорения расчетов по (2.21). 1 - c=30;

2 - c=50.

В таком случае, при определении точки максимума ускорения вычислений количеством ядер вносится существенный вклад. Как можно видеть на Рис. 2.7, ускорение вычислений при распределении одного и того же количества ядер по 50 вычислительным узлам в определенный момент превышает максимум, достижимый при распределении по вычислительным узлам.

Для ускорения вычислений в ГРИД-системах можно принять во внимание три общие рекомендации [49, 51]:

1) передавать за одно соединение между вычислительным узлом и сервером несколько пакетов;

2) уменьшить объем пакетов;

3) увеличить количество параллельных потоков для обработки вычислительных узлов.

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

Уменьшение объема пакетов уменьшит временную задержку T2 и позволит быстрее обмениваться данными серверу и вычислительным узлам.

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

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

2.7 Анализ обучения нейронных сетей в ГРИД-системах Ставится задача проанализировать ускорение обучения нейронных сетей на конечном наборе примеров с имеющимися ответами при применении генетического алгоритма, распараллеливаемого на ГРИД систему [45].

На Рис. 2.8 изображена общая схема устройства искусственного нейрона [65], которая в дальнейшем закладывается в основу нейронной сети, возможный пример которой изображен на Рис. 2.9. На вход каждого нейрона в процессе вычислений подается вектор x = ( x1..xn ), после чего последний умножается на вектор весов нейрона (скалярное произведение векторов) и над результатом перемножения выполняется определенная функция F(S), что и является выходным сигналом нейрона. Как показано на Рис. 2.9, множество нейронов соединяются в одну большую сеть, в которой выход одного нейрона соответствует входам нескольких нейронов в другом слое. На входы первого, входного слоя подается пример для обучения, а результат, снимаемый с выходного слоя, сравнивается с эталонным. После сравнивания производится корректировка значений весов нейронов в сети.

Рис. 2.8. Искусственный нейрон [65] Рис. 2.9. Пример устройства персептрона [65] На вход подается вектор:

x = ( x1..xn ), а на выходе должен получаться результат, максимально приближенный к:

y = ( y1.. y m ).

Обозначим количество примеров для обучения, как k. Тогда необходимо найти наиболее подходящие значения весов в задаче:

NN ( x1 ) y...

NN ( x ) y k k, (2.22) где NN - результат вычислений нейронной сети. В системе (2.22) требуется найти значения всех промежуточных весов связей нейронов. Благодаря хорошей распараллеливаемости для решения задачи одними из наиболее подходящих методов являются генетические алгоритмы (ГА), способные получать глобальное оптимальное решение, требуемое для системы (2.22) [46, 52]. Для точности и скорости работы ГА важно количество генерируемых особей и количество обрабатываемых поколений, что требует достаточно большого количества компьютерного времени.

Большие вычислительные мощности может предоставить сеть распределенных вычислений, если алгоритм позволяет выполнять действия независимо друг от друга [54].

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

Формирование задачи и составление уравнения (2.22);

1.

Генерация особей в количестве l;

2.

Проверки особей на нейронной сети с указанными значениями и 3.

поиск наиболее подходящих особей для следующего поколения;

Мутация особей;

4.

Повтор цикла 2-4 w-раз или до нахождения решения.

5.

Сервер берет на себя шаги 1,2,4, что дает возможность разделить 3-й шаг на некоторое количество отдельных вычислителей в сети.

Воспользуемся теорией Амдала [41] для расчета прироста в сети распределенных вычислений:

S= 1 a a+ c, (2.23) где a - доля последовательной части в задаче, а p- количество одновременно работающих вычислителей.

Введем обозначения:

l - число генерируемых за один цикл особей (особь - вектор значений, которые могут быть возможным решением);

w - число циклов для поиска решения;

tA - время на получение веса (расстояния до ответа) одной особи на одном вычислительном узле;

tS - время на все операции с одной особью на стороне сервера;

tq - время на 1 цикл = r*tS + r*tA (без распараллеливания);

T - максимальное время решения = q*tq = qr(tS+ tA);

a - доля последовательной части в задаче = tS / (tS+ tA);

t +t S= =s A 1 a pt s + t A a+ p. (2.24) При использовании в задаче ГРИД-системы необходимо отметить, что закон Амдала не учитывает специфические задержки, возникающие в среде передачи данных и при обработке данных клиентами и сервером.

Проиллюстрируем ускорение расчетов системы по закону Амдала и по зависимости (2.6). В качестве примера укажем следующие параметры (см. раздел 2.2):

• доля последовательных вычислений - 0.2;

• количество вычислительных узлов варьируется;

• задержка перед началом передачи данных - 0.5 с;

• время расчета одного пакета на одном вычислительном узле - 70 с;

• объем пакета - 30 килобит;

• скорость передачи со стороны сервера - 30 килобит в секунду;

• количество каналов обработки вычислительных узлов - 1.

Эти значения позволяют наглядно показать изменение ускорения при сравнительно небольшом количестве вычислительных узлов. На Рис.

представлен график зависимости ускорения от количества 2. вычислительных узлов. На начальном этапе увеличения количества вычислительных узлов наблюдается значительный рост (0-20000) ускорения вычислений. На среднем этапе (20000-50000) прирост ускорения заметно уменьшается. На последнем этапе (50000-70000) ускорение начинает падать из-за все больше проявляющего себя третьего типа задержки (возникновение очереди к серверу). Точка максимума ускорения в зависимости от количества вычислительных узлов приходится на средний этап и может быть вычислена по формуле (2.7).

Рис. 2.10. Иллюстрация ускорения вычислений в зависимости от количества вычислителей Влияние времени обработки одной особи из генетического алгоритма на стороне сервера представлено на Рис. 2.11. Время обработки на стороне сервера включено в долю последовательной части задачи:

а = tS / (tS+ tA), где а - доля последовательной части в задаче, tA - время на получение веса (расстояния до ответа) одной особи на одном вычислительном узле, tS время на все операции с одной особью на стороне сервера.

При устремлении значения времени обработки на сервере к нулю ускорение вычислений устремится к бесконечности, при устремлении времени обработки на сервере к бесконечности ускорение вычислений устремится к нулю.

Рис. 2.11. Иллюстрация ускорения вычислений в зависимости от времени обработки одной особи из генетического алгоритма на стороне сервера На Рис. 2.12 представлен график зависимости ускорения от количества вычислительных узлов и времени обработки одной особи на стороне сервера (для наглядности изменены параметры: время расчета одного пакета на одном вычислительном узле - 70 с, скорость передачи со стороны сервера - 30 килобит в секунду). Поведение графика по оси с объясняется теми же явлениями, которые упомянуты к Рис. 2.10. При увеличении времени обработки одной особи на сервере для каждой особи серверу необходимо уделять больше времени, уходящего как на внутрисистемные действия, так и на модификацию особи для следующего поколения (операции мутации и кроссинговера). С уменьшением времени обработки на стороне сервера соответственно уменьшается и время выполнения доли последовательной части в задаче, что положительно отражается на общем времени решения задачи.

Рис. 2.12. Иллюстрация ускорения вычислений (S) в зависимости от количества вычислителей (c) и времени обработки одной особи на сервере (ts) [54].

2.8. Взаимосвязь объема последовательных вычислений и времени обработки пакетов в ГРИД-системах В рамках метода (2.6) возможно рассмотрение взаимосвязей различных параметров ГРИД-систем. Интерес представляют значения, при которых ускорение вычислений S=1, S1 и S1 [55].

На Рис. представлена зависимость между долей 2.13-2. последовательных вычислений и временем расчета одного пакета в рамках метода (2.6).

Рис. 2.13. Зависимость между долей последовательных вычислений и временем расчета одного пакета. S = 1.

Рис. 2.14. Зависимость между долей последовательных вычислений и временем расчета одного пакета. S = 2.

Рис. 2.15. Зависимость между долей последовательных вычислений и временем расчета одного пакета. S = 0.5 (замедление вычислений).

Выделенные темным цветом области на Рис. 2.13-2.15 представляют собой срезы поверхности, образующейся при варьировании доли последовательных вычислений, времени расчета пакета и ускорения вычислений. Внутренние области срезов соответствуют более высокому ускорению вычислений, которое можно достигнуть при соответствующих параметрах ГРИД-системы и решаемых задач. Чем больше ускорение, тем более сильные ограничения накладываются на указанное соотношение параметров. На Рис. 2.14 видно, что для выполнения необходимых условий (ускорение вычислений S = 2) срезы локализуются в три отдельных области. Дальнейший анализ поверхности может позволить установить другие более глубокие соотношения в параметрах ГРИД систем.

2.9. Динамика характеристик загруженности ГРИД-систем в процессе обработки данных При рассмотрении степени загруженности системы проявляется определенная зависимость между загруженностью сервера и вычислительных узлов [55]. На Рис. 2.16-2.19 приведены результаты анализа имитационной модели при различном времени расчета пакетов на стороне вычислительных узлов. Под имитационным моделированием понимается частный случай математического моделирования, при котором изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему. Имитируются элементарные явления, составляющие процесс, с сохранением их логической структуры и последовательности протекания. По вертикальной оси отмечена очередь пакетов к серверу в отношении к общему количеству вычислительных узлов, по горизонтальной оси отмечена доля вычислительных узлов, занятая расчетами.

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

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

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

Рис. 2.19. Области стабильности ГРИД-системы в ходе параллельной обработки информации.

На графике Рис.2.17 время обработки пакета в 3.6 раза больше, чем на графике Рис. 2.16, а на Рис. 2.18 – в 6 раз. Как видно из построений Рис.

2.19, ГРИД-система во время решения задачи находится в определенной области состояний, расположенной на прямой в интервалах от полной загруженности сервера и свободных клиентов до противоположного состояния (свободный сервер и полностью загруженные клиенты). В подавляющем большинстве случаев при решении задач состояния системы расположены в области, примерно совпадающей с областью на Рис. 2.16.

Остальные состояния начинают проявляться при возникновении очереди к серверу.

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

Проанализировано влияние многоядерности вычислительных узлов на ускорение вычислений в ГРИД-системах. Определены пути прироста ускорения вычислений в ГРИД-системах. Перечисленные результаты в комплексе заявлены автором как обновленный метод выбора эффективного числа вычислителей ГРИД-системы [55, 57, Приложения и 2].

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

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

Показана возможность увеличения практически на порядок скорости расчетов с применением эволюционных алгоритмов именно, (а «генетического алгоритма») для обучения нейронной сети. Из выражений (2.6) и (2.7) следует возможность расчета необходимого количества генерируемых особей и обработанных поколений для максимального быстрого обучения нейронных сетей.

ГЛАВА 3 ЭКСПЕРИМЕНТАЛЬНОЕ ИССЛЕДОВАНИЕ РАЗРАБОТАННЫХ МЕТОДИК ОЦЕНКИ ПРОИЗВОДИТЕЛЬНОСТИ ГРИД-СИСТЕМ. ВОПРОСЫ ПРАКТИЧЕСКОГО ПРИМЕНЕНИЯ.

3.1 Разработка архитектуры и структурной схемы моделируемой ГРИД-системы. Имитация решения задач в ГРИД-системе.

В настоящей Главе исследуется, в условиях, приближенных к реальным, ускорение вычислений, достигаемое при использовании ГРИД системы и влияние временных задержек, описанных во второй главе настоящей работы. На основе указанных в главах 1.3, 2.1 и 2. характеристик, а так же рассматриваемой архитектуры ГРИД-системы определена топология сети, представленая на Рис. 3.1.

интернет вычислительный узел сервер...

вычислительный узел Рис. 3.1. Топология сети ГРИД-системы.

С целью обеспечения максимальной приближенности условий проведения экспериментальных исследований к реальным, при проведении экспериментов использовались следующие входные условия и ограничения [55]:

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

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

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

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

именно она показывает, до какого предела имеет смысл наращивать количество вычислительных узлов и во сколько раз может увеличиться ускорение расчетов. Метод ее определения для ГРИД-систем приводится в главах 2.2 и 2.3.

Эксперименты проводились в среде имитационного моделирования AnyLogic. AnyLogic включает в себя графический язык моделирования, а также дает возможность пользователю расширять созданные модели с помощью языка Java. Интеграция компилятора Java в AnyLogic предоставляет более широкие возможности при создании моделей.

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

Как уже отмечалось в Главе 2 настоящей работы, под имитационным моделированием понимается частный случай математического моделирования, при котором изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему. Имитируются элементарные явления, составляющие процесс, с сохранением их логической структуры и последовательности протекания. Моделируемая ГРИД-система состоит из 3-х элементов: сеть, сервер и изменяемое число клиентов. Время расчета пакетов носит вероятностный характер и зависит от многих факторов, привносящих дополнительные трудности в описание системы в целом. Наиболее продуктивным и наименее затратным как по средствам, так и по времени в данном случае является имитационное моделирование.

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

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

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

Модель исследуемой ГРИД-системы состоит из трех основных блоков: сервер, среда обмена информацией и вычислительные узлы.

Базовый участок сети изображен на Рис. 3.2.

Рис. 3.2. Обобщенная схема моделируемой ГРИД-системы Среда обмена информацией на Рис. 3.2 представлена в виде двух задержек, объединенных в общий класс «Задержек передачи по интернету»: от сервера к вычислительным узлам и от вычислительных узлов к серверу. Элементы сервера и его топология сети обобщены в блок «Сервер». Множество вычислительных узлов, участвующих в расчетах задач, объединены в блок «Клиенты». Это объединение согласуется с описанными в главах аспектами ГРИД-систем и носит 2.1-2. качественный характер, т.к. все вычислительные узлы выполняют одну и ту же роль, будучи при этом географически распределенными и независящими друг от друга.

Структура вычислительного узла представлена на Рис.3.3. на первом переключателе проверяется, занят ли уже вычислительный узел расчетами пакета или же свободен. Если вычислительный узел занят, идет проверка следующего узла. Эта проверка не занимает времени при моделировании, поэтому она эквивалентна отправке пакета сразу же целевому свободному узлу для расчетов. Если вычислительный узел свободен, он принимает пакет для расчетов и устанавливает переключатель в позицию "занят расчетами". Далее установлена задержка, эквивалентная времени расчета пакета. Для каждого узла задержка может быть настроена отдельно. После расчета первый переключатель устанавливается в положение "свободен", а результаты расчетов отправляются на сервер.

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

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

Рис. 3.3. Структура детерминированного вычислительного узла Рис. 3.4. Структура вычислительного узла с вероятностью увеличения стандартной задержки («delay1») В структуре, изображенной на Рис. 3.4 элемент «delay1» отвечает за имитацию отключения от процесса вычислений.

Далее на Рис. 3.5 представлена окончательная схема реализации модели. Вся модель поделена на несколько блоков трех возможных классов: узел», и «Вычислительный «Интернет» «Сервер».

Представленная схема построена для трех вычислительных узлов, но предусмотрена возможность ее расширения на любое количество клиентов. Три вычислительных узла отмечены соответственно тремя блоками, относящимися к «Группе клиентов». В центре находится блок «Интернет», имитирующий каналы передачи данных между сервером и вычислительными узлами. Справа расположен блок «Сервер», имитирующий обработку пакетов с данными на стороне сервера.

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

На Рис. 3.6 представлена структура моделируемой ГРИД-системы, реализованная в среде имитационного моделирования AnyLogic.

Рис. 3.5. Структура ГРИД-системы Рис. 3.6. Структура ГРИД-системы в AnyLogic На Рис. 3.7 представлена более подробная структура сервера.

Рассмотрим указанные элементы «delay» и за что каждая из них отвечает.

• «delay10» - очередь запросов от свободных вычислительных узлов на получение пакета для расчетов;

• «delay9» - запрос к БД для получения пакета;

• «delay8» очередь на постобработку пакетов и отправку вычислительным узлам;

• «delay5» - очередь из принятых пакетов, предобработка, проверка и т.п. действия перед добавлением результатов в БД;

• «delay6» - добавление результатов в БД;

• «delay7» - задержка на внутренние расчеты сервера, связанные с обработанными пакетами;

Элемент «selectOutput3» на Рис. 3.7 определяет, имеются ли еще не обработанные вычислительными узлами пакеты и, соответственно, требуется ли подавать запрос от свободного клиента на получение нового пакета.

Рис.3.7. Блоки задержки сервера на обработку результатов и запись в БД Проведен ряд экспериментов, в процессе которых изменялось количество пакетов для расчетов и количество вычислительных узлов в модели. Реализованная модель сети описывается с помощью аппарата сетей Петри (Рис. 3.8, 3.9, 3.10) [55]. Сети Петри разрабатывались для моделирования систем с параллельными взаимодействующими компонентами и хорошо подходят для описания ГРИД-систем.

Маркировка сети соответствует пакетам данных решаемой в ГРИД системе задачи. Вершины графа соответствуют различным состояниям пакетов в системе. Структура графа соответствует структуре, представленной на Рис. 3.5, а вариации структуры клиента соответствуют его различным структурам: с учетом сбоя структуре, (согласно изображенной на Рис. 3.4), с учетом сбоев в целом и каждого сбоя в отдельности (согласно структуре, изображенной на Рис. 3.4), без учета сбоя (согласно структуре, изображенной на Рис. 3.3).

Рис. 3.8. Сеть Петри с учетом сбоя в вычислительных узлах.

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

Рис. 3.10. Сеть Петри без сбоев в вычислительных узлах.

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

Состояния на Рис. 3.8-10 соответствуют следующим состояниям пакетов в ГРИД-системе:

1. Генерация нового пакета на сервере.

2. Очередь пакетов для обработки на вычислительных узлах.

3. Запрос к БД на получение информации.

4. Постобработка пакетов перед отправкой на вычислительные узлы.

5. Передача пакетов по сети к вычислительным узлам.

6. Множество состояний у вычислительных узлов.

6.1. Отключение вычислительного узла от процесса вычислений.

6.2. Обработка пакета.

6.3. Учет сбоев вычислительных узлов при вычислениях.

7. Передача пакетов по сети на сервер.

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

9. Добавление результатов расчетов в БД.

10.Задержка на внутренние расчеты сервера и анализ необработанных пакетов.

11.Счетчик пакетов при окончании расчетов.

12.Счетчик пакетов, находящихся в обработке.

В ходе проведения эксперимента были получены численные данные, представленные в Табл. 3.1 и Рис. 3.11, 3.12. Для каждых параметров сети проводилось 1000 запусков модели. В Табл. 3. представлены только минимальное, максимальное и среднее время по всем запускам модели [55].

Таблица 3.1. Результаты эксперимента Количество Минимальное Максимальное Среднее вычислительных Ускорение время время время узлов 1 687 697 737 1, 5 144 184 163 4, 7 144 197 130 4, 10 100 111 109 6, 20 83 101 94 7, 30 86 115 101 7, Рис. 3.11. Результаты эксперимента, время расчетов Рис. 3.12. Достигнутое ускорение в ходе каждого из запусков экспериментальной модели.

Таблица 3.2. Значения ускорения вычислений по результатам эксперимента и по формуле (2.6).

Количество Ускорение, math_S, вычислительных [ед.] [ед.] узлов 1 1,00 0, 5 4,52 3, 7 5,67 4, 10 6,76 5, 20 7,84 7, 30 7,30 7, Рис. 3.13. Значения ускорения вычислений по результатам эксперимента (S) и по формуле (2.6) (math_S) На Рис. 3.13 и в Табл. 3.2 приведены значения ускорения вычислений по результатам эксперимента и по формуле (2.6), достигаемые за счет распараллеливания задачи на множество вычислительных узлов. В ходе эксперимента были получены значения ускорения вычислений при различном количестве вычислительных узлов. На Рис. 3.13 приведены значения эксперимента S, а так же полученные по формуле (2.6) значения для среднего времени обработки одного пакета вычислительным узлом Усреднение связано с тем, что время обработки в (math_S).

экспериментальной модели задано нормальным распределением.

Таблица 3.3. Отклонения экспериментальных значений ускорения вычислений от теоретических (d_math_S).

Количество Отклонение Ускорение, вычислительных d_math_S значений в [ед.] узлов % 1 1,00 0,03 3, 5 4,52 0,69 15, 7 5,67 0,84 14, 10 6,76 0,78 11, 20 7,84 0,07 0, 30 7,30 0,08 1, В Табл. 3.3 приведены отклонения экспериментальных значений ускорения вычислений от теоретических. Среднее отклонение экспериментальных значений от теоретических составляет 0.41 единиц ускорения вычислений или 7.77%. Такое отклонение объясняется как типом распределения времени задержек на стороне сервера, вычислительных узлов (достаточно сильное влияние на значение дисперсии) и среды обмена данными, так и учетом вероятности выхода вычислительного узла из строя на неопределенное время.

Как видно из топологии ГРИД-системы с учетом вероятности сбоя вычислительных узлов, система представляет собой набор параллельно соединенных элементов – вычислительных узлов, а так же параллельных соединений этих элементов для учета количества пакетов с данными для расчетов.

Таблица 3.4. Вероятность возникновения сбоя в ГРИД-системе Количество Количество сбоев Количество Вероятность сбоя вычислительных вычислительных пакетов системы узлов узлов 10 1 0,1 0, 10 5 0,02 0, 10 7 0,014 0, 10 10 0,01 10 20 0,005 10 30 0,003 В Табл. 3.4 и на Рис. 3.14, 3.15 представлены значения вероятности сбоя как в системе в целом, так и в каком-либо из вычислительных узлов из расчета. Количество пакетов с данными составляет 10 пакетов. Из Табл.

3.4 видно, что с увеличением количества пакетов увеличивается вероятность сбоя в системе, т.к. увеличивается и продолжительность эксперимента, а с увеличением количества вычислительных узлов вероятность сбоя в системе уменьшается, т.к. узлы соединены параллельно и одновременный выход из строя всех узлов сразу мало вероятен [55].

Рис. 3.14. Вероятность сбоя системы в зависимости от количества вычислительных узлов (из расчета на 10 пакетов с данными) Рис. 3.15. Количество сбоев вычислительных узлов в ходе эксперимента (из расчета на 10 пакетов) 3.2 Развертывание ГРИД-системы на примере учебных высокопроизводительных вычислительных кластеров МГТУ МИРЭА.

В комплексе внедренческих работ и мероприятий Центра НИТ МИРЭА-МГДД(Ю)Т в 2012-2013 гг. с непосредственным участием диссертанта поэтапно реализуется развертывание и освоение в учебно творческом процессе МГДД(Ю)Т и МГТУ МИРЭА высокопроизводительных кластеров, обеспечивающих мультипользовательское мультиплатформенное информационное обслуживание в макромедиа образовательном информационном пространстве всех участников учебно-творческой деятельности по кафедре ИИС МГТУ МИРЭА и по сектору НИТ МГДД(Ю)Т. Этот комплекс внедренческих работ входит в состав Программы Департамента образования города Москвы и опирается на результаты выполнения с участием диссертанта фундаментальной НИР «Создание и развитие фундаментальной синергетической теории макромедиа информационных процессов и систем обслуживания образовательной индустрии» [56].

3.3 Развертывание высокопроизводительного вычислительного кластера на базе дистрибутива PelicanHPC.

Дистрибутив PelicanHPC, ранее известный как ParallelKnoppix, предоставляет все технологии для развертывания вычислительных кластеров е дополнительными вычислительными узлами, поддерживающими бездисковую загрузку по сети. Из недостатков можно указать предоставление в виде LiveCD без возможности установить на внутренний накопитель сервера.

Материнские платы поддерживают спецификации РХЕ 2.1 (Prebool execution Environment) - среды для загрузки компьютеров с помощью сетевой карты без использования жёстких дисков, компакт-дисков и других устройств Для организации загрузки системы в РХЕ используются протоколы IP, UDP, ВООТР и TFTP. Это позволяет сэкономить на жестких дисках (они будут не нужны) и ускоряет внутрисистемную работу (так как вся дисковая подсистема будет содержаться в оперативной памяти с соответствующей скоростью работы). Объема начальной памяти в 128 МБ на узел достаточно для его загрузки, т.к. в оперативную память загружается ядро и окружение сравнительно небольшою размера, а файловая система подключается из файла на сервере но протоколу NFS;

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

В рамках архитектуры сети МГТУ МИРЭА и конкретных настроек кластеров в операционные системы кластеров были внесены изменения в части внутренней адресации сети кластера и имени машин. Для мониторинга активности системы используется программный пакет «Ganglia», отображающий нагрузку на процессоры, память, дисковую подсистему и сеть. Так же, система поддерживает пользовательские дополнительные сенсоры на языках С, Perl, Python, РНР.

Учебное направление кластера обеспечивается поддержкой библиотеки реализованной для большинства языков MPI, программирования, и подходящих для курсов «Информатика», «Основы программирования», на ЯВУ», «Программирование «Информсреда образования», «Моделирование информационных систем» и других, связанных с созданием программ для ЭВМ. Т.к. большинство современных персональных компьютеров оснащается многоядерными процессорами, то обучение многопоточному программированию на многопроцессорных системах позволит многократно увеличить скорость выполнения разрабатываемых приложений.

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

3.4 Разработка ГРИД-системы на основе инфраструктуры BOINC.

Развертывание ГРИД-системы произведено в 2012-2013 гг. с использованием программной платформы BOINC [56].

Открытая Инфраструктура для Распределенных BOINC Вычислений университета Беркли (Berkeley Open Infrastructure for Network Computing) - программная платформа для организации распределённых вычислений использующих добровольно предоставляемые вычислительные ресурсы. Программа разрабатывается Калифорнийским университетом в Беркли (University of California, Berkeley). Все исходные тексты BOINC доступны в рамках LGPL лицензии. Поддерживаются операционные системы Windows, Linux, Mac OS X, Solaris. BOINC поддерживается National Science Foundation. BOINC состоит из серверной и клиентской частей.

Серверная часть состоит из HTTP-сервера с сайтами проектов, базы данных MySQL и набора вспомогательных утилит (генератор заданий, планировщик, валидатор, ассимилятор результатов). сервер HTTP необходим для общего управления проектом: регистрация участников, распределение заданий для обработки, получения результатов и управления базами данных проекта. В базе данных хранятся пользователи, пароли, записи заданий, результатов, информация о хостах, программах проекта и прочее.

BOINC-клиент - универсальный клиент для работы с различными (BOINC- совместимыми) проектами распределённых вычислений.

Кластер МГТУ МИРЭА выступает одновременно и в качестве BOINC-сервера, и BOINC-клиента. Кластер в МГДД(Ю)Т выступает в качестве BOINC-клиента. Запускаемая задача распределяется между двумя кластерами по соответствующим вычислительным узлам. В ГРИД-системе можно запускать сразу несколько задач для решения, а благодаря подробной документации на сайте проекта имеется возможность создавать собственные проекты для решения необходимых задач.

На Рис. 3.16 схематично изображены этапы взаимодействия между клиентом и сервером BOINC. Этапы загрузки заданий, обработки и отправки результатов повторяются в цикле для каждого пакета данных, которые необходимо обработать в рамках решаемой задачи.

На Рис. 3.17-3.20 изображен процесс обмена данными между клиентами и сервером BOINC в рамках ГРИД-системы на кластерах. Для каждого блока пакетов данных можно выделить четыре этапа:

1. Рис. 3.17 – передача пакетов от сервера к клиентам в рамках системы BOINC. За счет информации о кластерах сервер может передать за раз столько пакетов, сколько сможет параллельно обрабатываться на кластерах.

2. Рис. 3.18 – передача заданий от клиентов к вычислительным узлам в рамках структуры кластеров. Кластеры принимают пакеты от сервера и распределяют их по вычислительным узлам в рамках своей структуры. Вычислительные узлы производят параллельную обработку пакетов.

3. Рис. 3.19 – передача результатов расчетов от вычислительных узлов к клиентам в рамках структуры кластеров. Обработанные пакеты собираются на управляющий узел кластера.

4. Рис. 3.20 – передача результатов от клиентов к серверу в рамках системы BOINC. Кластеры отправляют результаты обработки пакетов на сервер.

Указанный процесс обмена данными соответствует последовательности обмена данными между вычислительным узлом и сервером, приведенным на Рис. 2.1. во 2-й главе. Топология ГРИД системы на основе BOINC соответствует классу топологий, в рамках которых применима разработанная во 2-й главе обновленная методика оценки количества вычислительных узлов в ГРИД-системах [55, 56, 57].

Рис. 3.16. Схема взаимодействия клиента и сервера BOINC.

BOINC-сервер BOINC-клиент Кластер в BOINC-клиент Кластер в МИРЭА МГДД(Ю)Т ….

….

Рис. 3.17. Схема обмена данными в высокопроизводительном кластере.

Передача заданий сервером BOINC вычислительным узлам.

BOINC-сервер BOINC-клиент Кластер в BOINC-клиент Кластер в МИРЭА МГДД(Ю)Т ….

….

Рис. 3.18. Схема обмена данными в высокопроизводительном кластере.

Передача узлам кластера заданий.

BOINC-сервер BOINC-клиент Кластер в BOINC-клиент Кластер в МИРЭА МГДД(Ю)Т ….

….

Рис. 3.19. Схема обмена данными в высокопроизводительном кластере. По окончании обсчета узлы возвращают вычислительным узлам результат.

BOINC-сервер BOINC-клиент Кластер в BOINC-клиент Кластер в МИРЭА МГДД(Ю)Т ….

….

Рис. 3.20. Схема обмена данными в высокопроизводительном кластере.

Вычислительные узлы передают серверу завершенные пакеты.

3.5 Краткие выводы Разработана имитационная модель ГРИД-системы, при помощи которой была проверена корректность положений, разработанных в Главе 2. Имитационная модель описана при помощи аппарата сетей Петри для нескольких возможных ситуаций: все вычислительные узлы работает без отказов, вычислительные узлы работают с отказами с учетом или без их учета. В ходе проведения эксперимента установлено, что среднее отклонение результатов эксперимента от теоретических значений составляет 7,77%. Такое отклонение объясняется как типом распределения времени задержек на стороне сервера, вычислительных узлов (достаточно сильное влияние на значение дисперсии) и среды обмена данными, так и вероятностью выхода вычислительного узла из строя на неопределенное время.

В рамках комплекса внедренческих работ и мероприятий Центра НИТ МИРЭА в гг. на высокопроизводительных 2012- вычислительных кластерах при непосредственном участии диссертанта была развернула ГРИД-система на основе программной платформы Научные положения, выводы и рекомендации диссертации BOINC.

внедрены в учебный процесс МГТУ МИРЭА и практические разработки [55, 56, Приложения 1 и 2].

ЗАКЛЮЧЕНИЕ На основании выполненных исследований:

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

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

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

Разработана обобщенная формула ограничения роста производительности вычислительной ГРИД-системы. Описана минимизация количества вычислительных узлов в ГРИД-системах. Разработаны методы определения скорости параллельной обработки в ГРИД-системах гомогенного и гетерогенного типа. Выделены характеристики вычислительных узлов с многоядерными процессорами и их влияние на ограничение роста производительности системы. Разработаны рекомендации для ускорения параллельной обработки данных в ГРИД системах. Проведен анализ ускорения обучения нейронных сетей посредством применения ГРИД-систем. Указаны взаимосвязи объема последовательных вычислений и времени расчета в ГРИД-системах.

Показана динамика характеристик загруженности ГРИД-систем в ходе обработки данных. На основе разработанных диссертантом математических моделей и алгоритмов создан программный продукт анализа ускорения распределенных вычислений на алгоритмах кластеризации. Эффективность разработанной программы проверена на ГРИД-системе, внедренной на базе МГТУ МИРЭА и МГДД(Ю)Т. Имеется Акт внедрения программы.


Значение полученных соискателем результатов исследования для практики подтверждается тем, что:

1. Определены зависимости скорости вычислений в ГРИД-системах от количества вычислительных узлов, что позволяет более точно оценивать временные и ресурсные затраты для решения задач в ГРИД-системах.

2. Разработаны методы оценки оптимального в смысле ускорения вычислений количества вычислительных узлов в ГРИД-системах, учитывающие как параметры ГРИД-системы, так и параметры решаемых задач.

3. Разработаны методы, позволяющие проводить анализ времени вычислений и ускорения вычислений в ГРИД-системах, благодаря чему возможно более точное определение необходимого на решение поставленной задачи времени при известных параметрах системы.

4. На основе рекомендаций диссертационной работы при участии диссертанта в рамках комплекса внедренческих работ и мероприятий Центра НИТ МИРЭА-МГДД(Ю)Т в гг. на 2012- высокопроизводительных вычислительных кластерах была разработана и развернула ГРИД-система на основе программной платформы BOINC.

5. Результаты диссертации внедрены в учебный процесс МГТУ МИРЭА в форме информационного обеспечения блока дисциплин «Моделирование», «Математическое моделирование» по кафедре ИИС МГТУ МИРЭА.

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

Научные положения, выводы и рекомендации диссертационной работы полностью опубликованы, доложены и обсуждены на девяти научно-технических конференциях, в том числе на 11-й научно практической конференции "Восход", отмеченной на конкурсе работ первым местом и третьи местом в конкурсе МГТУ МИРЭА 2011 года "Лучшая научная работа студентов и молодых ученых".

Личный вклад соискателя состоит в:

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

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

Основные выносимые на защиту результаты:

Метод определения ускорения вычислений в ГРИД-системах, 1.

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

Математическая модель клиент-серверного взаимодействия, 2.

позволяющая учитывать ограничения на линиях связи, характеристики вычислительных узлов, особенности архитектуры и организации ГРИД-систем.

Математическая модель ускорения обучения нейронных сетей с 3.

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

Метод определения ускорения вычислений в ГРИД-системах с учетом 4.

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

Метод определения ускорения вычислений в ГРИД-системах 5.

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

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

Имитационная модель ГРИД-системы с проработанной 6.

масштабируемостью количества вычислительных узлов, позволяющая проводить анализ и имитацию работы ГРИД-систем с количеством вычислителей от десятков до тысяч.

Развернутая при непосредственном участии соискателя ГРИД 7.

система на базе вычислительных кластеров в МГТУ МИРЭА, в рамках которой были проведены апробация и внедрение научных положений, выводов и рекомендаций диссертации в учебный процесс факультета «Информационные технологии» МГТУ МИРЭА.

Апробация работы. Результаты работы доложены и обсуждены на IV, Всероссийских конференциях интеллект:

V, VI "Искусственный философия, методология, инновации", конференции «Стандартизация, сертификация, обеспечение эффективности, качества и безопасности информационных технологий» 2011 г., международной заочной научно практической конференции "Современные вопросы науки и образования XXI век" 2012 г., 11-ой научно-практической конференции «Современные информационные технологии в управлении и образовании» ФГУП НИИ «Восход» – МИРЭА – МЭСИ, международной научно-практической конференции «Современные направления теоретических и прикладных исследований 2012».

Публикации. По теме диссертации опубликовано 15 статей (включая 3 статьи в журналах из перечня ВАК и 1 монографию в немецком издательстве). Получено свидетельство о государственной регистрации программы для ЭВМ №2012660211 от 24 сентября 2012 г. «Анализатор ускорения распределенных вычислений на алгоритмах кластеризации».

БИБЛИОГРАФИЯ 1. Grand challenges and HPCC (FAQ конференции comp.parallel, часть 22) [Электронный ресурс]. – Режим доступа:

http://parallel.ru/sites/default/files/docs/faq/22.txt 2. «Dell Helps to Power NASA’s Latest Mission to Mars» [Электронный ресурс]. – Режим доступа:

http://content.dell.com/us/en/corp/d/secure/2012-08-06-dell-high performance-computing-nasa-mars.aspx 3. «A moving question» [Электронный ресурс]. – Режим доступа:

http://www.ncsa.illinois.edu/News/Stories/disks/ 4. Fisk I., «First Experiences with LHC Grid Computing and Distributed Analysis», 09.12.2010 [Электронный ресурс]. – Режим доступа:

http://arxiv.org/abs/1012. 5. Worldwide LHC Computing Grid [Электронный ресурс]. – Режим доступа: http://wlcg.web.cern.ch/ 6. Программа Международной конференции 5-й "Распределенные вычисления и грид-технологии в науке и образовании", 16-21 июля 2012 г., г.Дубна, Россия [Электронный ресурс]. – Режим доступа:

http://grid2012.jinr.ru/programme.php 7. Hill M.D., Marty M.R. Amdahl’s Law in the Multicore Era, [Электронный ресурс]. – Режим доступа:

http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=4563876&url=http% 3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D 8. Sahu R., Chaturvedi A.K. Many-Objective comparison of twelve GRID scheduling heuristics. // IJCA Journal, 2011.

9. CISCO. Архив статей и новостей. 2011 г. [Электронный ресурс]. – Режим доступа: http://tools.cisco.com/search/JSP/search results.get?isFormSubmit=true&strqueryid=1&websessionid=Rf_VkTSKv YBSk1LnEuv5bdd&strCurrentSimilarSearchBreadCrumb=&strCurrentSele ctedModifierValues=&strSearchPageContext=allresults&profile=rurusppubl ished&strSortBy=cdcdevfour&strPrevQuery=%D0%BF%D0%BA%D1% 8%D0%B2&strQueryText=grid&searchBtn=&country=RU&language=ru& langctry=ruRU 10. Castellano M., Stifini R. Knowledge sharing in biomedical imaging using a grid computing approach. // Computational Modelling of Objects Represented in Images: Fundamentals, Methods and Applications III, Taylor & Francis Group UK, 2012, P. 257-260.

11. Chakrabarti A., Sengupta S., Damodaran A. System and method for application migration in a grid computing environment. // US Patent 8,117,606.

12. Zhao G., Bryan B.A., King D. Large-scale, high-resolution agricultural systems modeling using a hybrid approach combining grid computing and parallel processing. // Environmental Modelling & Software, Volume 41, March 2013, P. 231–238.

13. Balasangameshwara J., Nedunchezhian R. A hybrid policy for fault tolerant load balancing in grid computing environments. // Journal of Network and Computer Applications, Volume 35, Issue 1, January 2012, P. 412–422.

14. Viswanathan H., Mobile grid computing for data- and patient-centric ubiquitous healthcare. Enabling Technologies for Smartphone and Internet of Things (ETSIoT). // IEEE, 18 June 2012, P. 36- 15. Patni J.C., Trivedi N., Pal O.P., Chauhan P. An optimal approach of load balancing for grid computing. // CUBE '12 Proceedings of the CUBE International Information Technology Conference, New York, USA 2012, P. 567-571.

16. Arrabito L. et al. Major Changes to the LHCb Grid Computing Model in Year 2 of LHC Data. // Journal of Physics: Conference Series, Volume 396, Part 3, 396 032092.

17. Dickmann F. Solutions for biomedical grid computing—Case studies from the D-Grid project Services@MediGRID, // Journal of Computational Science, Volume 3, Issue 5, September 2012, P. 280– 18. Khooa B.T., Veeravalli B. A multi-dimensional scheduling scheme in a Grid computing environment. // Journal of Parallel and Distributed Computing, Volume 67, Issue 6, June 2007, P. 659– 19. N. Sim, D. Konovalov, D. Coomans. High-Performance GRID Computing in Chemoinformatics. // Comprehensive Chemometrics. Chemical and Biochemical Data Analysis. Volume 4, 2009, P. 507– 20. Amazon Elastic Compute Cloud (Amazon EC2) [Электронный ресурс]. – Режим доступа: http://aws.amazon.com/ec2/ 21. Ubuntu Cloud Infrastructure [Электронный ресурс]. – Режим доступа:


https://help.ubuntu.com/community/UbuntuCloudInfrastructure 22. Worldwide LHC Computing Grid [Электронный ресурс]. – Режим доступа: http://wlcg.web.cern.ch/ ресурс]. Режим доступа:

23. Einstein@Home [Электронный – http://einstein.phys.uwm.edu/ ресурс]. Режим доступа:

24. SETI@home [Электронный – http://setiathome.berkeley.edu/ ресурс]. Режим доступа:

25. Cosmology@home [Электронный – http://www.cosmologyathome.org/ ресурс]. Режим доступа:

26. MilkyWay@Home [Электронный – http://milkyway.cs.rpi.edu/milkyway/ ресурс]. Режим доступа:

27. Orbit@Home [Электронный – http://orbit.psi.edu/ 28. SETI@HOME. Статистика команд. 2011 г. [Электронный ресурс]. – Режим доступа: http://setiathome.berkeley.edu/top_teams.php 29. Демичев А.П., Ильин В.А., Крюков А.П. Введение в грид-технологии.

// М.: Препринт НИИЯФ МГУ. - 2007 - 11/832, 2007.

30. Европейский проект EGEE. [Электронный ресурс]. – Режим доступа:

http://www.eu-egee.org 31. EGEE & RDIG [Электронный ресурс]. – Режим доступа: http://egee rdig.ru/ 32. Zhao-hui W., Hua-jun C. From Semantic Grid to knowledge service cloud.

// Journal of Zhejiang University SCIENCE C, April 2012, Volume 13, Issue 4, P. 253- 33. Roure D., Jennings N., Shadbolt N. The semantic grid: past, present and future. // Proceedings of the IEEE, 2005, P. 669-681.

34. Foster I. What is the Grid? A Three Point Checklist // Argonne National Laboratory & University of Chicago, 20.07.2002.

35. Проект DEISA. 2011 г. [Электронный ресурс]. – Режим доступа:

http://www.deisa.org 36. Next Generation Grids: Requirements and Options for European Grids Research 2005–2010 and Beyond, Expert Group Report, 2004.

ресурс]. Режим доступа:

[Электронный – www.semanticgrid.org/docs/ngg2_eg_final.pdf 37. Kurdi H., Li M., Al-Raweshidy H. A Classification of Emerging and Traditional Grid Systems. // Brunel University Research Archive, 2008.

38. Friese T., Smith M., Freisleben B. Hot Service Deployment in an Ad Hoc Grid Environment. // Proc. 2nd Int’l Conf. Service Oriented Computing (ICSOC 04), ACM Press, 2004.

39. McKnight L.W., Howison J., Bradner S. Wireless Grids: Distributed Resource Sharing by Mobile, Nomadic, and Fixed Devices. // IEEE Internet Computing, vol. 8, no. 4, 2004.

40. Foster I., Kesselman C. The Grid: Blueprint for a New Computing Infrastructure. // Calif.: Morgan Kaufmann.- San Francisco, 1998.

41. Amdahl G. Validity of the Single Processor Approach to Achieving Large Scale Computing Capabilities. // AFIPS Conference Proceedings, 1967, P.

483–485.

42. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления // СПб.:

БХВ-Петербург, 2004. - 599 с.

43. Вентцель Е.С. Теория вероятностей // Москва: Высшая школа, 1998 576 с.

44. Hill M.D., Marty M.R., Amdahl’s Law in the Multicore Era. // IEEE Computer, 07.2008, P. 33-38.

45. Дробнов С.Е., Кошкин Д.Е. Анализ ускорения обучения нейронных сетей при применении grid-систем. // IV Всероссийская конференция "Искусственный интеллект: философия, методология, инновации", г.

Москва, МИРЭА, 10-12.11.2010.

46. Дробнов С.Е., Кошкин Д.Е. Анализ алгоритмов обучения нейронных сетей в распределенных системах. // Сборник статей, тезисов докладов и материалов к конференции сертификация, «Стандартизация, обеспечение эффективности, качества и безопасности информационных технологий», Москва, 2011.

47. Дробнов С.Е. Анализ количества гетерогенных вычислителей в GRID системах. // Сборник научных трудов по материалам Международной заочной научно-практической конференции "Современные вопросы науки и образования - XXI век", Тамбов, 29.02.2012.

48. Дробнов С.Е., Раев В.К., Силаев А.В. Оценка ускорения параллельных вычислений в GRID-системах с интенсивным межпроцессорным обменом. // Журнал «Информатизация образования и науки.», №3(15)/2012 - М. «Информика», 2012. - С. 135-147.

49. Дробнов С.Е., Кошкин Д.Е. Расчет оптимального количества вычислителей grid-системы. // 11-ая научно-практическая конференции «Современные информационные технологии в управлении и образовании» ФГУП НИИ «Восход» – МИРЭА – МЭСИ, 24.04.2012, Москва, С. 149-155.

50. Дробнов С.Е. Обобщение закона Амдала для большого объема параллельных вычислений в GRID. // Научный вестник МИРЭА, М.:МИРЭА – 2010 – № 2(9), С. 4-7.

51. Дробнов С.Е., Сигов А.С., Кошкин Д.Е. Кластеризация текста на основе анализа слов с применением распределенных вычислений. // Журнал «Информатизация образования и науки», №2(10) 04.2011. - М.

«Информика», 2011, С. 74-80.

52. Дробнов С.Е., Кошкин Д.Е. Кластеризация текстов с помощью нейронных сетей и временная оценка работы алгоритма. // V Всероссийская конференция "Искусственный интеллект: философия, методология, инновации" г. Москва, МИРЭА, 9-11.11.2011, С. 199-202.

53. Дробнов С.Е. Анализ гетерогенных GRID-систем с существенным количеством вычислителей. // Материалы международной научно практической конференции «Современные направления теоретических и прикладных исследований 2012». – Выпуск 1. Том 3. – Одесса:

КУПРИЕНКО, 2012.

54. Дробнов С.Е. Временная оценка обучения нейронных сетей в grid системах. // Материалы VI Всероссийской конференции студентов, аспирантов и молодых ученых «Искусственный интеллект: философия, методология инновации.», М.: «Радио и Связь», МИРЭА, 29-30.11. – Часть 1, С. 57-63.

55. Дробнов С.Е. Анализ ускорения распределенной обработки информации в GRID-системах. // Lambert Academic Publishing, 27.12.2012, Германия, 67 с.

56. Дробнов С.Е., Кошкин Д.Е. Учебный высоко-производительный вычислительный кластер макромедиа обеспечения на основе дистрибутива PelicanHPC с поддержкой открытой программной платформы BOINC в учебно-технологических комплексах МИРЭА и МГДДТ(Ю)Т. Рабочие технические материалы // «Разработка, апробация и внедрение инновационных практикоориентированных образовательных технологий в системе непрерывного образования базовая подготовка бакалавриат прикладной «школьная – бакалавриат магистратура дополнительное развивающее - образование» в рамках реализации Программ Департамента Москвы в 2012 и 2013 гг.» Выпуск 2. ФГУ ГНИИ ИТТ «Информика», МИРЭА, МГДТТ(Ю)Т, 2012/13, С. 73-78.

57. Дробнов С.Е. Оценивание ускорения вычислений в распределенных системах. // Научно-практический журнал «Прикладная информатика», Москва, «Синергия», №1(43) 2013, С. 40-48.

58. Дробнов С.Е., Раев В.К. Обобщение закона Амдала для распределенных вычислений в информационном образовательном облаке ЭКТРАНЕТ 4 МГДД(Ю)Т – МИРЭА. // Избранные материалы докладов, круглых столов и мастер-классов научно-практической конференции "Инновационные пути построения научно-практического образования. Прикладной бакалавриат. Дополнительное образование.

Разработка, аппробация и внедрение в информационно образовательное пространство Москвы системы бенчмаркинга "Школа-ВУЗ-рынок труда".", 25.10.2010, М.:МГГД(Ю)Т, 2010, С. 25 30.

59. Дробнов С.Е. Аспекты обучения нейронных сетей с применением эволюционных алгоритмов в GRID-системах. // Материалы VII Всероссийской конференции студентов, аспирантов и молодых ученых «Искусственный интеллект: философия, методология инновации», М.:

«Радио и Связь», МИРЭА, 13-15.11.2013 г. – Часть 1, С. 106-111.

60. Самоваров О.И., Кузюрин Н.Н., Грушин Д.А., Аветисян А.И., Михайлов Г.М., Рогов Ю.П. Проблемы моделирования GRID-систем и их реализации ресурс]. Режим доступа:

[Электронный – http://agora.guru.ru/abrau2008/pdf/050.pdf 61. Вишневский В.М. Теоретические основы проектирования компьютерных сетей. // М.: Техносфера, 2003. – 506 с.

62. Головкин Е.А. Вычислительные системы с большим числом процессоров. // М.: Радио и связь, 1995.- 320 с.

63. Королев А.С. Модели и алгоритмы интеллектуальной поддержки принятия решений при создании открытых информационных систем. // Диссертация кандидата технических наук: 05.1301.-М., 2007.-154 с.

64. Гришпан Л.А. Методы анализа стохастических сетевых моделей вычислительных систем // АН БССР, Ин-т техн. кибернетики.- Минск:

Наука и техника, 1988.-127 с.

65. Корнеев В.В. Параллельные вычислительные системы. М.:

// «Нолидж»,1999.- 312 с.

66. Жожикашвили В.А., Вишневский В.М. Сети массового обслуживания.

Теория и применение к сетям ЭВМ. // М.:Радио и связь, 1988.-191с.

67. Хайкин С. Нейронные сети: полный курс, 2-е издание // Москва:

"Вильямс", 2008 - 1104 с.

68. Олифер В.Г., Олифер Н. А. Компьютерные сети. Принципы, технологии, протоколы. // Питер, 2007. – 960 с.

69. Дудин А.Н., Медведев Г.А., Меленец Ю.В. Практикум на ЭВМ по теории массового обслуживания [Электронный ресурс]: Учебное пособие. // Мн.: «Электронная книга БГУ», 2003.

70. Tanenbaum A. Computer networks. // Prentice Hall PTR, 1996. – 813 p.

71. Гнеденко Б.В., Коваленко И.Н. Введение в теорию массового обслуживания. // ЛКИ, 2007. – 400 с.

72. Law A. Simulation Modeling and Analysis. // McGraw-Hill Education Europe, 2006. – 768 p.

73. Орлов А.И. Математика случайная. Вероятность и статистика – основные факты. // М.: МЗ-Пресс, 2004. – 110 с.

74. Minoux M. Mathematical Programming - Theory and Algorithms. // J.

Wiley & Sons, 1986.

75. Du W., Murugesan M., Jia J., Uncheatable grid computing, Algorithms and theory of computation handbook. // Chapman & Hall/CRC, 2010, 30 p.

76. Zhang S., Chen X., Zhang S., Huo X., The comparison between cloud computing and grid computing. // Computer Application and System Modeling (ICCASM), 2010 International Conference (Vol.11), P. 72-75.

77. Iosup A., Epema D. Grid Computing Workloads, Internet Computing IEEE (Vol.15, Issue: 2), 2011, P. 19-26.

78. Wang L., Jie W., Chen J., Grid computing: infrastructure, service, and applications. // CBC Press, 2010, 512 p.

79. Sadashiv N. Cluster, grid and cloud computing: A detailed comparison, Computer Science & Education (ICCSE). // 2011 6th International Conference, P. 477 - 482.

80. Singh A., Awasthi L.K. Performance comparisons and scheduling of load balancing strategy in Grid Computing. // Emerging Trends in Networks and Computer Communications (ETNCC), 2011 International Conference, P.

438-443.

81. Robertazzi T. Grid and Cloud Computing, Basics of Computer Networking.

// Springer New York, 2012, P. 65-68.

82. Wilkinson B. Grid computing: Techniques and applications. // CRC Press, 2010, 265 p.

83. Yagoubi B., Meddeber M. Distributed load balancing model for grid computing. // Revue ARIMA, 2010, P. 43-60.

84. Singh A.K., Runtime Processes and Trust Management Model in MANET and GRID. // International Journal of Engineering Research and Applications (IJERA), Vol. 2, Issue 6, 2012, P. 896-929.

85. Talia D., Trunfio P., How distributed data mining tasks can thrive as knowledge services. // Communications of the ACM, Vol. 53, Issue 7, 2010, P. 132-137.

86. Farkas Z., Kacsuk P., Balaton Z., Gombas G., Interoperability of BOINC and EGEE. // Future Generation Computer Systems, Volume 26, Issue 8, October 2010, P. 1092–1103.

87. Posypkin M., Semenov A., Zaikin O., Using BOINC desktop grid to solve large scale SAT problems. // Computer Science, 2012, 13(1)2012, P. 26-34.

88. Giorgino T., Harvey M.J., De Fabritiis G. Distributed computing as a virtual supercomputer: Tools to run and manage large-scale BOINC simulations. // Computer Physics Communications, Volume 181, Issue 8, August 2010, P.

1402–1409.

89. Cerin C., Fedak G. Desktop grid computing. // CRC Press, 2012, 362 p.

90. Zoltan Farkas. Grid Interoperability Based on a Formal Design. // Journal of Grid Computing, Volume 9, Issue 4, 2011, P. 479-499.

91. Anglano C., Canonico M., Guazzone M. The ShareGrid Peer-to-Peer Desktop Grid: Infrastructure, Applications, and Performance Evaluation, Journal of Grid Computing, Volume 8, Issue 4, 2010, P. 543-570.

92. Padmanabhan A., Ghosh S., Wang S., A Self-Organized Grouping (SOG) Framework for Efficient Grid Resource Discovery. // Journal of Grid Computing, Volume 8, Issue 3, 2010, P. 365-389.

93. Korpela E.J. SETI@home, BOINC, and Volunteer Distributed Computing.

// Annual Review of Earth and Planetary Sciences, Earth and Planetary Sciences, vol. 40, 2012, P. 69-87.

94. Ludwig S.A., Moallem A. Swarm Intelligence Approaches for Grid Load Balancing. // Journal of Grid Computing, Vol. 9, Issue 3, P. 279-301.

95. Shah S.C., Park M.S. An Energy-Efficient Resource Allocation Scheme for Mobile Ad Hoc Computational Grids. // Journal of Grid Computing, Vol. 9, Issue 3, P. 303-323.

96. Sanjay H. A., Vadhiyar S.S. Strategies for Rescheduling Tightly-Coupled Parallel Applications in Multi-Cluster Grids. // Journal of Grid Computing, Vol. 9, Issue 3, P. 379-403.

97. Andronico G., Ardizzone V., Barbera R. e-Infrastructures for e-Science: A Global View. // Journal of Grid Computing, June 2011, Volume 9, Issue 2, P. 155-184.

98. Gentzsch W., Girou D., Kennedy A. DEISA—Distributed European Infrastructure for Supercomputing Applications, Journal of Grid Computing, June 2011, Volume 9, Issue 2, P. 259-277.

99. Segal B., Buncic P., Quintas D.G. LHC cloud computing with CernVM. // 13th International Workshop on Advanced Computing and Analysis Techniques in Physics Research ACAT, Jaipur, India, 2010.

100. Ivashko E., Nikitina N. Web Service of Access to Computing Resources of BOINC Based Desktop Grid, Parallel Computing Technologies. // Lecture Notes in Computer Science, Vol. 6873, 2011, P. 437-443.

101. Белов С.Д., Зайцев А.С., Каплин В.И., Король А.А., Использование виртуализованной суперкомпьютерной инфраструктуры Новосибирского научного центра для обработки данных экспериментов физики высоких энергий, Вычислительные технологии.

// 2012. Т. 17. № 6. С. 36- 102. Волохов В.М.,Варламов Д.А., Пивушков А.В., Технологии ГРИД в вычислительной химии, Вычислительные методы и программирование. // т. 11, 2010, С. 42- 103. Волохов В.М., Варламов Д.А., Пивушков А.В. и GRID вычислительная химия, Вычислительные методы и программирование.

// 2009, No 1, С. 78– 104. Хританков А.С. Оценка эффективности распределенных систем при решении задач переменного размера. // Научно-технический вестник информационных технологий, механики и оптики, №2 (66), 2010, С.

66-71.

105. Вин А.П., Зыскин Ю.Л. Технология грид и распределенная вычислительная система, Естественные и технические науки, // Издательство "Спутник+", №2, Москва, 2007, С. 228- 106. Коваленко В.Н., Корягин Д.А. ГРИД: истоки, принципы и перспективы развития, информационные технологии и вычислительные системы. // Институт системного анализа РАН, Москва, 2008, №4, С. 38- 107. Машинистов Р.Ю., Метечко В.И., Смирнов С.Ю., Тихомиров В.О., Компьютерная грид ферма МИФИ. Инженерная физика, // Издательство "Научтехлитиздат", Москва, №1, 2008, С. 54-59.

108. Васильев Г.П., Егоров Г.А., Зонис В.С. и др. Малые ЭВМ высокой производительности. // Архитектура и программирование. - М.: Радио и связь, 1990. - 256 с.

109. Егоров Г.А., Красовский В.Е., Прохоров Н.Л., Тювин Ю.Д., Шкамарда А. Н. Управляющие ЭВМ: Учебн. пособие. // М.: МИРЭА, 1999. -138 с.

110. Прохоров Н.Л., Егоров Г.А., Красовский В.Е., Тювин Ю.Д., Шкамарда А.Н. Управляющие вычислительные комплексы. // М.:

Финансы и статистика, 2003. -352 с.

111. Нечаев В.В. Введение в теорию метамоделирования систем. // М. :

Информациология, 1997. – 62 с.

112. Нечаев В.В., Галахов И.В., Шабшин И.И. Применение персональных ЭВМ : Учебное пособие. // М. : МИРЭА, 1996. – 63 с.

113. Петров А.Б. Информационные сети: учебное пособие. // М.: МИРЭА, 2008. – 112 с.

114. Петров А.Б. Проектирование информационных систем. Безопасность функционирования: учебное пособие для студентов вузов, обучающихся по направлению подготовки 230200 "Информационные системы". // М.: МИРЭА, 2008, 131 с.

115. Zamkovets S.V., Zakharov V.N., Krasovsky V.E. Evolution of modern microprocessors architecture. // М.: Sistemy i Sredstva Inform., 21:1 (2011), P. 34– 116. Замковец С.В., Захаров В.Н., Попкова Е.Я., Френкель С.Л., Шмейлин Б.З. Некоторые аспекты проектирования СБИС с использованием алгоритмических машин состояний (ASM). // М.:

Системы и средства информ., 2009, № 19, С. 87–95.

БЛАГОДАРНОСТИ Автор благодарен и искренне признателен:

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

ПРИЛОЖЕНИЯ Приложение Акты внедрения ГРИД-системы на базе 1 – высокопроизводительных вычислительных кластеров МГТУ МИРЭА.

Приложение Свидетельство о государственной регистрации 2 – программы для ЭВМ №2012660211.

Приложение 3 – исходный код программного пакета "Анализатор ускорения распределенных вычислений на алгоритмах кластеризации".

Приложение 1: Акты внедрения ГРИД-системы на базе МГТУ МИРЭА и Московского Государственного Дворца Детского (Юношеского) Творчества Приложение 2: Свидетельство о государственной регистрации программы анализа ускорения распределенных вычислений Приложение 3: Программа анализа ускорения распределенных вычислений на алгоритмах кластеризации В настоящем приложении приведен исходный код программного пакета " анализатор ускорения распределенных вычислений на алгоритмах кластеризации". Язык программирования: С++.

main.cpp :

//анализатор ускорения распределенных вычислений на //алгоритмах кластеризации #include iostream #include math.h using namespace std;

class AnalyzerInterface{ public:

virtual ~AnalyzerInterface(){} virtual double GetAcceleration()=0;

};

class AmdahlAnalyzer: public AnalyzerInterface{ private:

//доля последовательной части задачи (0-1) double serial_part;

//количество вычислительных узлов int nodes_count;

public:

AmdahlAnalyzer(double _serial_part, int _nodes_count){ serial_part = _serial_part;

nodes_count = _nodes_count;

} ~AmdahlAnalyzer(){ } //доля последовательной части задачи (0%-100%) double GetSerialPart(){ return serial_part;

} void SetSerialPart(double a){ serial_part = a;

} //количество вычислительных узлов int GetNodesCount(){ return nodes_count;

} void SetNodesCount(int a){ nodes_count = a;

} //расчет ускорения virtual double GetAcceleration(){ double S = (double)1/( serial_part+((double)1 serial_part)/nodes_count );

return S;

} };

class Analyzer: public AnalyzerInterface{ private:



Pages:     | 1 || 3 |
 





 
© 2013 www.libed.ru - «Бесплатная библиотека научно-практических конференций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.