Scientific journal
Modern problems of science and education
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 1,006

THE TOOLKIT FOR MODELING OF HETEROGENEOUS DISTRIBUTED COMPUTING ENVIRONMENT

Dyadkin Yu.A. 1
1 Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences
The aim of the research is to create an integrated tool set meant to be used to research distributed computing environment based on methods of automation of creating simulation models and distributed simulation. One of most important part of the integrated tool set is toolkit intended for the users of different categories such as model developers and end users to create and apply aggregate multilevel models for problem-oriented distributed computing environment. Creating models is high degree associated to the model knowledge domain. Properties of distributed computing environment, the architecture of the integrated tool set, a toolkit of specification of a model of the distributed computing environment, a model specification language, a language specification model translator, the software of building dynamic GUI are considered in the article. Creating a model with the help of a model specification language for analyze the functioning of LAN is given in the article as an example.
distributed computing environments
simulation
toolkit

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

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

В данной работе рассматривается подход к разработке инструментального средства для спецификации агрегированных многоуровневых моделей РВС, обеспечивающего детальное описание всех аспектов решения задач в этих средах. Языковые средства спецификации модели, разрабатываемые в рамках данного подхода, являются развитием исследований, представленных в [5, 6].

Проблемно-ориентированная распределенная вычислительная среда

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

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

Распределенность. Вычислительные узлы среды могут быть размещены на значительном расстоянии друг от друга.

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

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

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

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

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

На рис. 1 представлена схема функционирования РВС [10]. Условно можно выделить несколько компонентов среды, взаимодействующих между собой: интегрированная кластерная система, предназначенная для выполнения заданий; администраторы и пользователи системы; мультиагентная система, служащая для оптимального распределения заданий и отправки на выполнение на кластере или группы кластеров; система мониторинга, сообщающая управляющему агенту информацию о состоянии интегрированной кластерной системы (занятость ресурсов, процент выполнения заданий и другие важные сведения).

Рис. 1. Схема функционирования РВС

Для имитационного моделирования систем такого рода в ИДСТУ СО РАН разрабатывается специализированный инструментальный комплекс, архитектура которого представлена на рис. 2.

Архитектура инструментального комплекса

Рис. 2. Архитектура инструментального комплекса

Подсистема спецификации модели представляет собой инструментальное средство, обеспечивающее: описание имитационной модели с высокой степенью привязки к конкретной предметной области; трансляцию данного описания в термины языка SQL для получения файла базы данных; автоматическое построение пользовательского графического интерфейса для взаимодействия пользователей различных категорий с инструментальным комплексом и наполнения специфицированной модели реальными данными. Построение пользовательского графического интерфейса осуществляется с помощью системы АРМГис [1, 9].

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

Разработчик модели описывает имитационную модель на специальном языке. Затем модель транслируется в описание терминов языка SQL, по которому создается файл БД. Данный файл передается системе АРМГис для построения графического пользовательского интерфейса программы, после чего разработчик модели может наполнять ее реальными данными. Описания имитационных моделей хранятся в специальной БД – библиотеке имитационных моделей. Данная технология предполагает создание библиотеки описаний моделей, которые впоследствии могут быть использованы другими предметниками для создания своих моделей. Существует возможность импорта данных из уже готовых моделей, обеспечивающая комплексирование по данным.

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

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

Опишем данную модель на языке спецификации. Для этого выделим объекты предметной области, которые будут участвовать в модели: узлы сети (объект NODES); концентраторы, которым подключены узлы (объект HUBS); подключение концентраторов между собой (объект HUB2HUB); подключение узлов к концентраторам (объект NODESHUB); права доступа (объект ACCESS) – список пар компьютеров, определяющих право доступа одного компьютера к другому компьютеру. Текст модели на языке спецификации приведен на рис. 3:

Рис. 3. Текст на языке спецификации модели

Данное описание транслируется в термины языка SQL, после чего передается системе АРМГис для построения графического пользовательского интерфейса, с помощью которого обеспечивается возможность наполнения модели данными. Пример автоматически построенного графического пользовательского интерфейса представлен на рис. 4.

Рис. 4. Графический пользовательский интерфейс

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

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

Заключение

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

Исследование выполнено при финансовой поддержке РФФИ, проект № 15-29-07955-офи_м.

Рецензенты:

Опарин Г.А., д.т.н., профессор, зам. директора по научной работе ФБГУН «Институт динамики систем и теории управления» СО РАН, г. Иркутск;

Амбросов Н.В., д.э.н., профессор, заведующий кафедрой информационных технологий МГЛУ ЕАЛИ, Евразийский лингвистический институт в г. Иркутске – филиал ФГБОУ ВПО «Московский государственный лингвистический университет», г. Иркутск.