Научная статья на тему 'Децентрализованная организация диспетчера grid на базе сообществ агентов'

Децентрализованная организация диспетчера grid на базе сообществ агентов Текст научной статьи по специальности «Математика»

CC BY
243
78
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ / МУЛЬТИАГЕНТНЫЕ СИСТЕМЫ / ДЕЦЕНТРАЛИЗАЦИЯ / РАСПРЕДЕЛЕННОЕ ДИСПЕТЧИРОВАНИЕ / СООБЩЕСТВО / КОЛЛЕКТИВНОЕ ПРИНЯТИЕ РЕШЕНИЙ / GRID / DISTRIBUTED COMPUTATIONS / MULTIAGENT SYSTEMS / DECENTRALIZATION / DISTRIBUTED DISPATCHING / COMMUNITY / COOLECTIVE DECITION-MAKING

Аннотация научной статьи по математике, автор научной работы — Каляев Анатолий Игоревич

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

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

Похожие темы научных работ по математике , автор научной работы — Каляев Анатолий Игоревич

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

DECENTRALISED ORGANIZATION OF DISPATCHER OF GRID BASED ON AGENTS COMUNITIES

Nowadays many control systems need complex computations. One of the most convenient ways to perform such computations is GRID. This work presents the approach, allowing reducing cost of the distributed calculations in GRID by placing dispatching functions of system from special servers to collective of executive computing nodes. The algorithm of work of decentralized GRID based on multiagent technology is developing. Workability of algorithms is demonstrated by program model.

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

УДК 004.75

А.И. Каляев

ДЕЦЕНТРАЛИЗОВАННАЯ ОРГАНИЗАЦИЯ ДИСПЕТЧЕРА GRID НА БАЗЕ

СООБЩЕСТВ АГЕНТОВ*

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

GRID, . -

способность алгоритмов демонстрируется на программной модели.

GRID; распределенные вычисления; мультиагентные системы; децентрализация; распределенное диспетчирование; сообщество; коллективное принятие решений.

A.I. Kalyaev DECENTRALISED ORGANIZATION OF DISPATCHER OF GRID BASED ON AGENTS COMUNITIES

Nowadays many control systems need complex computations. One of the most convenient ways to perform such computations is GRID. This work presents the approach, allowing reducing cost of the distributed calculations in GRID by placing dispatching functions of system from special servers to collective of executive computing nodes. The algorithm of work of decentralized GRID based on multiagent technology is developing. Workability of algorithms is demonstrated by program model.

GRID; distributed computations; multiagent systems; decentralization; distributed dispatching; community; coolective decition-making.

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

« » GRID -

, -ских задач (исполнительные вычислительные узлы (ИВУ)) [5]. Очевидно, что на-« », -, GRID- .

Влияние данного недостатка может быть существенно снижено, если минимизировать участие «посредника» (СВУ) в работе GRID-системы и переложить функции организации и диспетчирования вычислений непосредственно на ИВУ, входящие в её состав. При этом данные функции должны быть каким-то образом распределены между множеством ИВУ, т.е. децентрализованы.

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

* Работа выполнена при финансовой поддержке РФФИ (фант № 11-07-00963а).

Раздел VII. Высокопроизводительные вычислительные алгоритмы

Обобщенная структура современных GRro-систем. В результате анализа современных GRID-систем можно сделать вывод, что их организация, так или иначе, сводится к схеме, представленной на рис. 1, и содержит три логических уровнях:

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

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

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

Рис. 1. Распределение функций в иерархической GRlD-системе

Основную роль в такой системе играет служебный уровень, на который воз, -темы в целом (см. левую часть рис. 1). При этом в современных GRID-системах, ,

. ( -

) ( ), -

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

GRID :

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

♦ Во-вторых, вычислительная сложность задач диспетчирования, возлагаемых на служебный уровень, заметно возрастает при увеличении числа ИВУ, задействованных в системе. Решение этих задач за ограниченный промежуток

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

♦ В-^етьих, указанная система обладает невысокой надежностью, поскольку выход из строя одного из СВУ приводит к её частичной или даже полной неработоспособности. Повышение надежности системы путем дублирования диспетчеров потребует двухкратного увеличения количества СВУ в

, .

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

GRID, , -

, GRID- . -

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

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

GRID.

GRID- -

ций служебных узлов, ответственных за организацию (диспетчирование) процесса вычислений [8]. Это позволит добиться увеличения отказоустойчивости и повышения возможностей масштабируемости, однако использование данного подхода требует применения новых методов и алгоритмов децентрализованной организации и диспетчирования процессов вычисления в GRID. В качестве основы для разработки таких методов и алгоритмов целесообразно использовать мультиагентные технологии. Это позволит решать задачу диспетчирования GRID-системы в целом путем решения множества локальных задач, распределенных по отдельным ИВУ, задействованными в системе.

На основе этих соображений, основные принципы работы децентрализован-GRID -

зом. Основными взаимодействующими элементами системы целесообразно сде-, GRID , -

чера. Агенты физически реализуются на базе ИВУ, при этом нет централизованного управления агентами: они являются проактивными, самостоятельно взаимодействуют и решают совместно задачи, поступающие в систему. При этом целесооб-, ,

GRID,

материальной выгоды: за решение каждой задачи ее заказчик (пользователь) предлагает некоторое количество виртуальных очков. Эти очки могут в реальности быть чем угодно: деньгами, различными привилегиями, просто показателем проделанной определенным ИВУ работы. Таким образом, агент заинтересован в решении как можно большего количества задач за как можно меньшее время, при этом для него выгодно решать задачи с наибольшей ценой и наименьшим количе-.

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

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

В то же время подобная децентрализованная организация системы накладывает определенное ограничение на способы взаимодействия пользователей и ис-GRID- . GRID

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

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

. «

», -.

GRID- . 2.

Рис. 2. Распределение функций в децентрализованной GRID на базе сообществ

агентов

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

GRID- . -

централизованной как на исполнительном, так и на служебном уровнях.

GRID. -

ного выше подхода можно представить следующую укрупненную схему решения

задачи в децентрализованной GRID (рис. 3).

Рис. 3. Схема решения задачи в децентрализованной GRID

При этом во время работы децентрализованная GRID-система руководствуется следующим алгоритмом:

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

2. .

3. -, .

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

5. Агент переходит в режим создания сообщества для решения выбранной задачи: рассылает всем известным по предыдущей работе агентам предложение участвовать в решении задачи, а затем начинает решение само.

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

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

, .

8. - , в сообществе инициируется поиск дополнительных ИВУ для решения.

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

Данному алгоритму отвечает схема организации вычислительного процесса в децентрализованной GRID, представленная на рис. 3.

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

GRID, .

.4 5. - ,

решаемых в системе, моменты времени их поступления в систему, их статус и па.

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

, ( . 5). -

ложены элементы управления экспериментом и статистика.

Рис. 4. Интерфейс имитационной модели децентрализованной GRID в начале

работы

В общем виде процесс моделирования может быть описан следующим образом. Изначально в имитационной модели формируется список задач, которые должны быть решены в системе, при этом каждая задача может состоять из нескольких подзадач [9], каждая из которых может решаться на одном из ИВУ. Каждый из агентов в определенной последовательности начинает поиск задач для решения. Для этого он посылает сообщения с запросом на каждую из досок объявлений, существующую в системе. Изначально ДО не содержит задач, но в определенные заранее моменты времени задачи поступают на ДО (в интерфейсе задача помечается как Active), и тогда ДО в ответ на запросы отправляют агентам список имеющихся в наличии задач со всеми необходимыми параметрами. Агент, получая сообщение со списком, выбирает для себя наиболее выгодную для решения задачу (по соотношению цена / количество вычислений), проверяет, достаточно ли коли, , времени. Если количества ИВУ достаточно, агент ищет следующую задачу, если ,

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

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

).

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

Рис. 5. Интерфейс имитационной модели децентрализованной GRID в процессе

моделирования

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

GRID,

относительных потерь времени работы ИВУ на организацию процедур децентрализованного диспетчирования [10]. Каждый эксперимент проходил следующим : GRID, -

мента, содержащая от 1 до 10000 ИВУ и от 1 до 100 ДО. Также создавался набор задач (от 1 до 1000) различной сложности и с различным количеством подзадач, для каждой задачи указывался или генерировался определенный момент поступления в систему. Кроме того, составлялся график отказов, который позволял моделировать отказ любого ИВУ или любой ДО в заданный момент времени в процессе функционирования GRID. После настройки необходимых параметров начинался процесс моделирования: в заданные моменты времени на ДО системы подавались определенные задачи из списка задач программной модели, агенты ИВУ об-

Раздел VII. Высокопроизводительные вычислительные алгоритмы

ращались к ДО и решали поступающие задачи, при этом велся подсчет времени, потраченного ИВУ непосредственно на диспетчирование, и общего времени работы для решения всех задач. Кроме того, фиксировались моменты успешного за. , , -шие в систему, были успешно решены, при этом вычислительное время, потраченное на полезную работу ИВУ по решению пользовательских задач, составило от 82 до 94 % от общего времени работы в зависимости от параметров моделирования и от потока задач.

. -ванных GRID-систем обладает рядом преимуществ.

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

- , GRID

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

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

- , GRID -

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

Все это позволяет сделать вывод о том, что предложенная децентрализован-GRID

GRID , ,

очередь, позволит расширить сферу применения GRID-компьютинга.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Foster I., Kesselman C. and Tuecke S. The Anatomy of the Grid: Enabling Scalable Virtual Organizations // International Journal of High Performance Computing Applications. - 2001.

- № 15 (3). - P. 200-222.

2. Инструментарий Globus Toolkit - http://www.globus.org.

3. Система Condor - http://www.cs.wisc.edu/condor.

4. Филамофитский ММ. Система поддержки метакомпьютерных расчетов X-Com: архи-

// . - 2004.

- Т. 5. - С. 123-137.

5. Foster C., Kesselman J., Nick S. Tuecke S. The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration., Open Grid Service Infrastructure WG, Global Grid Forum, June 22, 2002Metropolis N. et al. Equation of state calculations by fast computing. Machines // J.Chem.Phys. - 1953. - Vol. 21.

6. Каляев KA., Гайдук A.P., Капустян СТ. Проблемы интеллектуального управления

// , ,

(МАУ-2009): Материалы Междунар. науч.-техн. конф. Т. 2. - Таганрог: Изд-во ТТИ ЮФУ, 2009. - С. 190-194.

7. . ., . ., . . -

ния в группах роботов. - М.: Физматлит, 2009. - 279 с.

8. . . -

- // докладов Четвертой ежегодной научной конференции студентов и аспирантов базовых . - - - : - , 2008. - . 101-102.

9. . . -

- // . науч-техн. конференции “Высокопроизводительные вычислительные системы - 2008” (ВПВС-2008). - Таганрог: Изд-во ТТИ ЮФУ, 2008. - С. 408-409.

10. Горелова Г.В., Каляев AM., Мельник Э.В., Радченко С.А Планирование эксперимента при

//

Вестник информационных и компьютерных технологий. — 2007. — № 10. — С. 49-56. Статью рекомендовал к опубликованию д.т.н. СТ. Капустян.

Каляев Анатолий Игоревич

-

им. акад. А.В. Каляева Южного федерального университета, г. Таганрог.

E-mail: [email protected].

477922, г. Таганрог, ул. Р. Люксембург, 8-А.

Тел.: +79043497677. '

.

Kalyaev Anatoly Igorevich

Research Institute of Multiprocessor Computer Systems Southern Federal University.

E-mail: [email protected].

8-A, R. Luxemburg Street, Taganrog, 477922, Russia.

Phone: +79043497677.

Programmer.

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