Научная статья на тему 'Оценка результатов моделирования вычислительных систем на базе нейропроцессоров'

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

CC BY
328
89
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОДЕЛИРОВАНИЕ / НЕЙРОПРОЦЕССОР / СИСТЕМА / MODELING / NEUROPROCESSOR / SYSTEM

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Романчук Виталий Александрович, Ручкин Владимир Николаевич

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Романчук Виталий Александрович, Ручкин Владимир Николаевич

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

EVALUATION OF THE SIMULATION COMPUTING SYSTEMS BASED ON NEUROPROCESSOR

The problems of the development of the mathematical apparatus of evaluation of the results of computer modeling of systems based on neuroprocessors. Detail but describes how to set-theoretic analysis of computer systems, neuroprocessors systems classification and analytical expressions estimates of simulation results neuroprocessor systems.

Текст научной работы на тему «Оценка результатов моделирования вычислительных систем на базе нейропроцессоров»

A UTOMA TIC LOAD BALANCING IN HYBRID COMPUTER NETWORKS

A.N. Privalov, A.K. Klepikov

The paper describes the algorithm of the computational load balancer in the networks of educational institutions. A description of the software load balancer on the basis of the proposed algorithm.

Key words: balancing, load, cloud computing, network school.

Privalov Alexander Nikolaevich, doctor of technical science, professor, alex-andr prv a ramhler. ru, Russia, Tula, Tula State Lev Tolstoy Pedagogical University

Klepikov Alexey Konstantinovich, postgraduate, Don-klepikov@yandex.ru, Russia, Tula, Tula State Lev Tolstoy Pedagogical University

УДК 004.383.3

ОЦЕНКА РЕЗУЛЬТАТОВ МОДЕЛИРОВАНИЯ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ НА БАЗЕ НЕЙРОПРОЦЕССОРОВ

В.А.Романчук, В.Н.Ручкин

Рассмотрены вопросы разработки математического аппарата оценки результатов моделирования вычислительных систем на базе нейропроцессоров. Подробно описан процесс теоретико-множественного анализа вычислительной системы, классификации структур нейропроцессорных систем и аналитические выражения оценок результатов моделирования нейропроцессорных систем. Исследование выполнено при финансовой поддержке РФФИ в рамках проекта № НК-12-07-97516/13.

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

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

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

194

информации (обработки изображений, распознавания, криптографии).

Для дальнейшего развития в области нейропроцессорных технологий существует ряд проблем, например невысокая производительность нейропроцессорных устройств в связи с небольшой частотой нейрочипов (30-150 МГц). Одним из способов решения первой проблемы является организация многопроцессорных систем. В настоящее время в области ней-ропроцессорных технологий ведутся исследования в части многопроцессорности, уже разработаны модули, включающие несколько процессоров с различными связями (плата ВМ1, плата МЦ4.04, плата МЦ4.13, МЦ9.01, разработанные в НТЦ ’’Модуль”; модули SMT302, SMT344, SMT313, SMT315, SMT316 на базе 1,2 и 4 модулей семейства TMS320C4x).

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

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

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

Одним из способов решения перечисленных проблем является моделирование вычислительных систем различной структуры на базе нейропроцессоров. Математический аппарат моделирования таких систем подробно показан в [4,5]. Завершающим этапом моделирования является оценка его результатов.

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

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

базе нейропроцессора для реализации алгоритма А ().

Алгоритм А() представляет собой кортеж операций вида п

у = / (g) = / (^ а^х^ + «0) и операций управления. Введем множество опе-/=1

раций О = (01,02,...,Ор,. .,Ор}. С учетом введенного множества операций этот алгоритм обработки информации представляет собой кортеж операций <01,02,...,0т,...,Ом > длиной ^ =|А^-^')|;} = 1,N, где ^,^..^0т,...,0М е 0 :

а(у) =< 0Ь^..^0т,..., 0М >; у = 1, N. (1)

На этапе разработки программы каждой операции ставится в соответствие

микрокоманда процессора МКр; "р = 1, К/ :

"01 е 0 : 0т ® (МКр};"р = 1К;"т = 1М, (2)

где МК = (МК1,МК2,...,МК/,...,МК1}- множество микрокоманд, написанных на внутреннем языке процессора; К/ - минимальное количество микрокоманд, необходимое для реализации операции 0т ;

В зависимости от решения задачи (2) на следующем этапе необходимо каждому у -му алгоритму обработки А(У) поставить в соответствие некото-

рую программу РЯ(У), то есть определить отображение р:

р: А(у) ® РЯ(у), у = . (3)

Под программой РЯ(у) понимается кортеж микрокоманд:

РЯ(У) =<МК1,МК2,...,МК1,...,МКЬ >, (4)

где МК1,МК2,...,МК1,...,МКЬ е МК.

Далее производится разделение кода программы РЯ(У) на множество подпрограмм (Я0(-У)}; ( = 1, £ и загрузка подпрограмм на каждый

процессорный модель (ПМ).

Математически данный этап можно описать следующим образом:

РЯ(у) ® (Я0{(])};( = ;"у = 1^. (5)

Введем понятие структуры £w, под которым понимается отношение параллельности выполнения подпрограмм Яц, Я/2 между /1-м и /2-м

процессорными модулями Яя^Я/2; "Я/1, Я/2 е РЯ (у). Отношение параллельности понимается как выполнение одновременно двух или несколько подпрограмм на разных процессорных модулях.

Тогда необходимо определить структуру £w е £;w = 1,Ж из множества всевозможных структур £ = (£1,£2,...,£w. .,}, позволившую у-й программе РЯ(У) (4) поставить в соответствие множество подпрограмм:

£w : РЯ(У)® {Я0(])};( = Ц.;"у = 1^. (6)

Введем понятие равенства подпрограмм обработки информации Я0у = Я0^, под которым будет подразумеваться равенство длин подпрограмм / Я0у / = / Я0^ /, под которым понимается равенство число микрокоманд подпрограмм, и совпадение подпрограмм с точностью до микрокоманды МК() = Мк(^),"( = 1,| Я0у |, т.е:

/ Я0у / = / Я0к /

(7)

где (= 1,| Я0у |.

Рассмотрим отношение Я0(£wЯ0k структуры £w, которое указывает на то, что любые две произвольно взятые подпрограммы / Я0у / и /Я0к /, удовлетворяющие (7), могут выполняться одновременно на разных ПМ, то есть:

Тогда справедливо утверждение о том, что отношение структуры обработки 8^, есть отношение эквивалентности [4].

Введенное отношение структуры обработки информации позволяет

вивалентности, т.е. классы неравных между собой подпрограмм согласно (5). Число классов эквивалентности обозначим через Ь, а порядок класса | а( |, ( = 1, Ь . Каждый класс эквивалентности имеет своего представителя в виде подпрограммы Я0(, имеющей число микрокоманд равное порядку подпрограммы | Я0( |.

Таким образом, структура £w по определению ставит в соответствие некоторой у -й программе обработки информации РЯ(у) совокупность подпрограмм Я0(, число которых равно числу классов эквивалентности

Ь, а кратность (Я0() д определяется порядком класса эквивалентности

Если рассмотреть все возможные структуры, полученные в результате решения задачи (9), то могут получиться структуры обработки: конвейерная, векторная, конвейерно-векторная, векторно-конвейерная.

Если число классов эквивалентности Ь = 1 и порядок класса | ад |.

Тогда у -му алгоритму обработки информации соответствует набор | ад |

совершенно одинаковых программ. Дальнейшие рассуждения зависят от построения у -го алгоритма. Если выходная информация каждой подпрограммы Я0/ является входной для следующей Я0/+1; / = 1, д; входная первой программы Я01 является входной, а последней Я0д - выходной всего

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

"Я01, Я0к е РЯ(у) : Я01£м;Я0к.

(8)

разбить всю программу РЯ(у), определяемую согласно (4) на классы эк

| а( |:

"у = 1,N ,РЯ(у)^ ® {(Я0()д}."д = 1,| а1 |;"( = 1,Ь . (9)

сорных модулей на обработку информации, получаем структуру векторного типа, в которой все д ПМ будут одновременно функционировать по

одной и той же подпрограмме ДО1. Число ПМ в этом случае д =| ад |. Аналогичные рассуждения для случая, когда число классов эквивалентности равно / = 1, К, порядок каждого класса равен | а1 |= 1,1 = 1, Ь . Число ПМ в этом случае д = Ь .

Если число классов эквивалентности равно / = 1, К и порядок каждого класса равен | а1 |, I = 1, Ь, то имеем наиболее общий случай, характеризующий структуру типа МГМО, так как предлагает отношения не только между подпрограммами внутри класса, но и между подпрограммами различных классов.

Рассматриваемые ниже варианты структур обработки информации могут быть реализованы в зависимости от построения конкретного ] -го

алгоритма А(^, а именно от передачи данных между подпрограммами.

Объединим все смежные подпрограммы, в которых информация передается параллельно, в К множеств. Тогда О = {О^..., ОК},

О/ = {ЯО^,. .,^О^},"/ = 1,К. Число подпрограмм в каждой группе различно для каждого множества Ыо. =| {О/} |,"/ = 1,К. Тогда, если все подпрограммы ДОмМ,. ., ДО(ы внутри множеств О/, / = 1, К, обмениваются

информацией последовательно, то структура является конвейерновекторной и представляет собой структуру, в которой по принципу конвейерной системы обрабатываются векторные структуры. Число ПМ будет К

равно д = X | {О/} |. Если в каждом множестве О/ число подпрограмм рав-/ =1

но 1, т.е. | О1 |=| О2 |= ... =| Ок |= 1 то имеем структуру конвейерного типа.

Объединим все смежные подпрограммы, в которых информация передается последовательно, в V множеств. Тогда О = {О1,...,Оу},

01 = {ДОм),..., Д0(Ы/}, "г = 1,У. Число подпрограмм в каждой группе различно для каждого множества Ио1 =| {О/} |,"/ = 1, V. Тогда, если всем подпрограммам ЯО^,...,ДО(ы внутри множества О/,/ = 1,У информация необходима одновременно, то структура является векторно-конвейерной и представляет собой структуру, в которой по принципу векторной системы обрабатываются конвейерные структуры. Число ПМ будет равно У

д = X | {О/} |. Если в каждом множестве О/ число подпрограмм равно 1, / =1

т.е. | G\ |=| G2 |= ... =| Gy |= 1 то имеем структуру векторного типа.

Исходя из поставленных целей исследования, были выбраны следующие критерии [1].

1. Время проигрыша T^ j) - время, равное разности времени выполнения программы на системе и времени выполнения программы на системе, состоящей из одного ПМ.

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

Вспомогательными оценками являются:

1. Время выполнения T^ j) - время, в течение которого обрабатывается программа PR(j) на многопроцессорной системе архитектуры Sw.

2. Время простоев Т^) - суммарное для всех ПМ время, в течение которого ПМ простаивает в ожидании данных.

3. Время обработки Тр) - суммарное время, равное времени, в течение которого ПМ обрабатывает данные.

Рассмотрим конвейерную структуру НПС. Цикл конвейерной структуры определяется как продолжительность максимального во времени этапа обработки, т.е.:

T(j) = max/eL TO\j),"l = 1L. (10)

Первый результат обработки информации будет получен на выходе

конвейера через время t(j) = T^j * q . Эта величина и является временем выполнения, т.е.

T(j) = maxleL T0(j) * q,"l = JL. (11)

Каждый последующий результат обработки будет получаться на т( j)

выходе через 1£J', тогда рассчитать время получения последующих результатов обработки можно следующим образом:

T(j) = maxleL T0(j) * q + (N - 1)*maxisL To(j),"l = \L, (12)

где N - порядковый номер необходимого результата обработки.

Тогда проигрыш по времени будет равен:

q

T(j) = q * max ieLT0(j) - £ T0(j\"l = 1L. (13)

/=1

C другой стороны, при обработке каждого последующего слова получается выигрыш по времени относительно однопроцессорного варианта системы. Тогда время выигрыша будет равно:

q

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

Teij} = £ № -1)* Toj+1). (14)

k=1

Тогда время простоев можно оценить следующим образом:

T$ = X(k *(max ^TO^ - TOj)), "l = U. (15)

k=1

Время обработки равно:

тр )=£ (k * mq-k+1). (16)

k=1 4

Рассмотрим векторную структуру НПС. Время выполнения равно:

T(j) = max/еL T0(j),"l = \L. (17)

Время проигрыша можно оценить:

q

t() = max 1(eL T0(j) - £T0(j),"l = 1L. (18)

l=1

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

T(j) = £0) - £T0\j) = 0. (19)

i=1 i=1

Время простоев будет равно:

q

Т„р = q * max i£lT0((J) - £ "l = U. (20)

l=1

Время обработки равно:

q

Тр]) = £ To\j). (21)

l=1 l

Рассмотрим конвейерно-векторную структуру НПС. Время цикла определяется как продолжительность максимального по времени этапа:

T(j) = maxlєL To(j),"l = \L. (22)

Время выполнения равно:

T0j) = K * maxleL To(j),"l = \L. (23)

Тогда время выигрыша равно:

200

i л K /N ( л

ту) = £((K-1)* £T0}J)). (24)

/=1 i= /M

Время проигрыша можно определить:

q

Т^) = K * maxleL T0(j) - £T0(j), "l = \L. (25)

/=1

Время простоев равно:

K /N c\ c\ __

Тпр) = £ ((K -1 )*( £ (max ^Т0у) - T0}J)))), "l = 1, L. (26) /=1 i=/M

Тогда время обработки равно:

K lN

Тр) = £((K -1 +1)* £(T0}J)). (27)

/=1 i=/M

Рассмотрим векторно-конвейерную структуру НПС. Цикл равен:

T(j) = max/еL T0\j),"l = \L. (28)

Время выполнения программы Т^ j) равно:

Т() = max leL Т0Р * maxGi £g | Gt |,i = jV,"l = U . (29)

Время выигрыша:

( л K iN ( л q , л

т6°> = £ £ (k * T0jN-k+i) - £ 0). (30)

i=1k=iM /=1

Время проигрыша:

q

Тпj) = max g1 sgG \*maxieLT0jj) - £T0((j\i = 1y. (31)

l=1

Время простоев:

, л K iN , -ч , л __

Щ) = £ £ ((k *(max kLT0)J > - T0)$_к+1)), "l = 1, L. (32) i=1k=iM Время обработки:

K iN

тр) = £ £(k * mjk+1). (33)

i=1k =iM

На основе полученных аналитических выражений оценки результатов моделирования был разработан модуль анализа в многофункциональном программном комплексе "Нейро-КС" (рисунок).

Модуль анализа результатов моделирования

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

1. Классификация многопроцессорных вычислительных систем на базе нейропроцессоров.

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

3. Алгоритмы и программные средства моделирования и оценок результатов моделирования.

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

1. Галушкин А.И. Нейрокомпьютеры. Кн.3. М: ИПРЖР, 2000. 528 с.

2. Злобин В.К., Ручкин В.Н. Нейросети и нейрокомпьютеры: Учеб. пособие. СПб.: БХВ-Петербург, 2011. 256 с.

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

4. Романчук В.А., Ручкин В.Н. Разработка программных средств анализа нейропроцессорных систем // Вестник РГРТУ. №2. Вып.32. 2010.

С.61-67.

5. Романчук В.А., Ручкин В.Н., Фулин В.А. Разработка модели сложной нейропроцессорной системы // Цифровая обработка сигналов. №4. 2012. С.70-74.

Романчук Виталий Александрович, канд. техн. наук, v.romanchuk@rsu.edu.ru, Россия, Рязань, Рязанский государственный университет имени С.А.Есенина,

Ручкин Владимир Николаевич, д-р техн. наук, проф., v.ruchkin@rsu.edu.ru, Россия, Рязань, Рязанский государственный университет имени С.А.Есенина

EVALUATION OF THE SIMULATION COMPUTING SYSTEMS BASED ON

NEUROPROCESSOR

V.A.Romanchuk, V.N.Ruchkin

The problems of the development of the mathematical apparatus of evaluation of the results of computer modeling of systems based on neuroprocessors. Detail but describes how to set-theoretic analysis of computer systems, neuroprocessors systems classification and analytical expressions estimates of simulation results neuroprocessor systems.

Key words: modeling, neuroprocessor, system.

Romanchuk Vitaliy Aleksandrovich, candidate of technical science, v.romanchuk@rsu.edu.ru, Russia, Ryazan, Ryazan State University named by Esenin,

Ruchkin Vladimir Nikolaevich, doctor of technical science, professor, v.ruchkin@rsu.edu.ru, Russia, Ryazan, Ryazan State University named by Esenin

УДК: 004.891

МЕТОД ОПТИМИЗАЦИИ СРЕДСТВ ЗАЩИТЫ ОТ DOS АТАК

Д.О. Руднев, А.А Сычугов

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

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

Отличительной особенностью первого полугодия 2013 года стало резкое возрастание мощности DoS атак (Denial of Service), по сравнению со вторым полугодием 2012 года средняя мощность атак выросла более чем в 56 раз (по данным Kaspersky DDoS Prevention). Максимальная длительность атаки, зафиксированная в первом полугодии 2013 года, составила 6 дней (по данным Kaspersky DDoS Prevention). С ростом мощности и длительности атак возрастают и убытки, причинённые ими. Причины DoS

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