Научная статья на тему 'Классификация масштабируемых программных комплексов'

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

CC BY
235
45
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАСШТАБИРУЕМЫЕ ПРИЛОЖЕНИЯ / РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ / ВИРТУАЛЬНЫЕ МАШИНЫ / МУЛЬТИАГЕНТНОЕ УПРАВЛЕНИЕ / SCALABLE APPLICATIONS / DISTRIBUTED COMPUTING / VIRTUAL MACHINES / MULTI-AGENT CONTROL

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Феоктистов Александр Геннадьевич, Корсуков Александр Сергеевич, Башарина Ольга Юрьевна

ЦЕЛЬ работы заключается в повышении эффективности мультиагентного управления распределенными вычислениями в гетерогенной распределенной вычислительной среде с виртуализированными ресурсами. МЕТОДЫ. В процессе классификации приложений применено признаковое описание их свойств. РЕЗУЛЬТАТЫ. Предложен подход к классификации масштабируемых приложений в процессе мультиагентного управления вычислениями. Суть и новизна предложенного подхода состоит в использовании агентами дополнительных знаний о масштабируемых приложениях в процессе управления ими. ВЫВОДЫ. Анализ результатов вычислительных экспериментов показал, что применение системы классификации в процессе функционирования приложений позволяет улучшить ряд важных критериев выполнения распределенных вычислений, включая их ускорение и эффективность.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Феоктистов Александр Геннадьевич, Корсуков Александр Сергеевич, Башарина Ольга Юрьевна

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

CLASSIFICATION OF SCALABLE SOFTWARE COMPLEXES

The PURPOSE of the work is to improve the efficiency of multi-agent control of distributed computing in a heterogeneous distributed computing environment with virtualized resources. METHODS. The classification of applications is carried out by means of attributive description. RESULTS. An approach has been proposed to a classification of scalable applications under multi-agent control of computations. The essence and novelty of the proposed approach consists in the fact that agents use additional knowledge about scalable applications while controlling them. CONCLUSIONS. The analysis of computational experiment results has shown that the use of the classification system in the application execution process can improve a number of important performance indicators of distributed computing including its speedup and efficiency.

Текст научной работы на тему «Классификация масштабируемых программных комплексов»

Оригинальная статья / Original article УДК 004.021

http://dx.doi.org/10.21285/1814-3520-2017-11-92-103

КЛАССИФИКАЦИЯ МАСШТАБИРУЕМЫХ ПРОГРАММНЫХ КОМПЛЕКСОВ © А.Г. Феоктистов1, А.С. Корсуков2, О.Ю. Башарина3

1,2Институт динамики систем и теории управления СО РАН, Российская Федерация, 664033, г. Иркутск, ул. Лермонтова, 134. 3Иркутский государственный университет, Российская Федерация, 664003, г. Иркутск, ул. Карла Маркса, 1. 3Иркутский национальный исследовательский технический университет, Российская Федерация, 664074, г. Иркутск, ул. Лермонтова, 83.

РЕЗЮМЕ. ЦЕЛЬ работы заключается в повышении эффективности мультиагентного управления распределенными вычислениями в гетерогенной распределенной вычислительной среде с виртуализированными ресурсами. МЕТОДЫ. В процессе классификации приложений применено признаковое описание их свойств. РЕЗУЛЬТАТЫ. Предложен подход к классификации масштабируемых приложений в процессе мультиагентного управления вычислениями. Суть и новизна предложенного подхода состоит в использовании агентами дополнительных знаний

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

Ключевые слова: масштабируемые приложения, распределенные вычисления, виртуальные машины, муль-тиагентное управление.

Формат цитирования: Феоктистов А.Г., Корсуков А.С., Башарина О.Ю. Классификация масштабируемых программных комплексов // Вестник Иркутского государственного технического университета. 2017. Т. 21. № 11. С. 92-103. DOI: 10.21285/1814-3520-2017-11-92-103

CLASSIFICATION OF SCALABLE SOFTWARE COMPLEXES A.G. Feoktistov, A.S. Korsukov, O.Yu. Basharina

Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences, 134 Lermontov St., Irkutsk 664033, Russian Federation. Irkutsk State University,

1 Karl Marks St., Irkutsk 664003, Russian Federation. Irkutsk National Research Technical University,

83 Lermontov St., Irkutsk 664074, Russian Federation.

ABSTRACT. The PURPOSE of the work is to improve the efficiency of multi-agent control of distributed computing in a heterogeneous distributed computing environment with virtualized resources. METHODS. The classification of applications is carried out by means of attributive description. RESULTS. An approach has been proposed to a classification of scalable applications under multi-agent control of computations. The essence and novelty of the proposed approach consists in the fact that agents use additional knowledge about scalable applications while controlling them. CONCLUSIONS. The analysis of computational experiment results has shown that the use of the classification system in the application execution process can improve a number of important performance indicators of distributed computing including its speedup and efficiency.

Keywords: scalable applications, distributed computing, virtual machines, multi-agent control

Феоктистов Александр Геннадьевич, кандидат технических наук, старший научный сотрудник лаборатории параллельных и распределенных вычислительных систем, e-mail: agf65@yandex.ru

Aleksandr G. Feoktistov, Candidate of technical sciences, Senior Researcher of the Laboratory of Parallel and Distributed Computing Systems, e-mail: agf65@yandex.ru

2Корсуков Александр Сергеевич, кандидат технических наук, научный сотрудник лаборатории параллельных и распределенных вычислительных систем, e-mail: alexask@mail.ru

Aleksandr S. Korsukov, Candidate of technical sciences, Researcher of the Laboratory of Parallel and Distributed Computing Systems, e-mail: alexask@mail.ru

Башарина Ольга Юрьевна, кандидат технических наук, доцент кафедры естественных дисциплин ИГУ, магистрант ИРНИТУ, e-mail: basharinaolga@mail.ru

Olga Yu. Basharina, Candidate of technical sciences, Associate Professor of the Department of Natural Sciences of Irkutsk State University, Master's Degree Student of Irkutsk National Research Technical University, e-mail: basharinaolga@mail.ru

For citation: Feoktistov A.G., Korsukov A.S., Basharina O.Yu. Classification of scalable software complexes. Proceedings of Irkutsk State Technical university. 2017, vol. 21, no. 11, pp. 92-103. (In Russian) DOI: 10.21285/1814-35202017-11-92-103

Введение

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

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

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

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

ложений и системных сред, обладающих этим свойством, детально представлены в работе [2].

Исследованию свойств больших прикладных задач, структуры процесса их решения, организации распределенной расчетной программы и обеспечению эффективности ее выполнения в разнородной среде посвящена работа [3]. Важным направлением исследований в этой области является также обеспечение заданных критериев эффективности решения задач с учетом характеристик используемых ресурсов. Так, например, предметно-ориентированный алгоритм планирования вычислений, учитывающий как специфику решаемой задачи, так и структурные особенности вычислительной среды, предложен в [4].

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

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

В настоящей статье представлен подход к классификации масштабируемых программных комплексов (приложений) в

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

Гетерогенная распредел

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

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

рованными ресурсами. Суть и новизна предложенного подхода состоит в использовании агентами дополнительных знаний о масштабируемых приложениях в процессе управления ими.

вычислительная среда

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

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

Администраторы среды / Environment administrators

Административные политики / Administrative policies

Глобальные пользователи fj^^ среды / Global users of

environment

Приложения пользователей / User applications

AB SS V МЩ................

•Assú гЯВБ} Ш

siesta ft Ш

M PMSat src -iL ORCA

Локальные пользователи кластеров / Local users of clusters

Рис. 1. Схема взаимодействия основных объектов среды Fig. 1. Interaction scheme of main environment objects

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

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

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

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

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

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

- использование СУПЗ, например, HTCondor, PBS Torque или SLURM, поддерживающих выполнение заданий на нескольких кластерах;

- применение пакета Globus Toolkit в качестве промежуточного программного обеспечения, взаимодействующего с установленными на кластерах СУПЗ;

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

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

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

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

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

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

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

внешнего окружения и другими особенностями.

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

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

Классификация масштабируемых приложений

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

Как правило, масштабируемое приложение включает:

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

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

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

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

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

В разработанной системе классификации масштабируемых приложений предполагается, что вычислительная нагрузка зависит от ряда параметров: число заданий приложения (с1) и наличие связи между ними (с2); наличие подзаданий (с3) и зависимость между подзаданиями (с4); уровень

масштабирования (с5); возможность предсказания времени выполнения задания (с6); используемая система управления заданиями (07); влияние объема исходных данных (с8). Значения параметров С1-С8 приведены на рис. 2.

Наличие подзаданий / Subjobs

Да / Yes Нет/ No

Зависимость между заданиями / b

Зависимость между подзаданиями / Subjob relations

Да / Yes Нет / No d

Зависимость времени выполнения

заданий от объема данных / Dependence of job execution time on the data volume

Да / Yes Нет / No f

Система управления заданиями I Job management system

СУПЗI Гипервизор I Система управления контейнерами I Гибридная система I

RMS Hypervisor Container management system Hybrid system

9

Предсказание времени выполнения заданий / Job execution time prediction

_I_

Невозможно / На основе динамического На основе вычислительной Impossible анализа / Based on истории / Based on the

dynamic analysis computational history

h

На основе априорной информации / Based on a priori information

a

c

e

Рис. 2. Параметры приложений в системе классификации: a - число заданий приложения; b - зависимость между заданиями; c - наличие подзаданий, d - зависимость между подзаданиями; e - уровень масштабирования; f - зависимость времени выполнения задания от объема исходных данных; g - система управления заданиями; h - предсказание времени

выполнения заданий

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

Fig. 2. Application parameters in the classification system: a - application job number; b - job relations; c - availability of subjobs; d - subjobs relations; e - scalability level; f - dependence of job execution time on the data volume; g - job management system; h - job execution time prediction

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

В Институте динамики систем и теории управления СО РАН разработан новый подход к управлению приложениями в ГРВС с виртуализированными ресурсами [9]. Управление заданиями глобальных пользователей осуществляется с помощью мультиагентной системы [10]. Задания локальных пользователей кластеров управляются непосредственно СУПЗ кластеров. ГРВС включает два типа ресурсов: выделенные (виртуализированные) и невыделенные. Предполагается, что имеется несколько сегментов ресурсов обоих типов. Каждый сегмент представлен своим агентом. Схема выполнения заданий в ГРВС приведена на рис. 3.

Агент-классификатор определяет класс приложения и передает его агенту-планировщику. Агент-планировщик находит ресурсы, подходящие для выполнения приложений данного класса, и формирует виртуальное сообщество агентов, представляющих эти ресурсы. Агенты виртуального сообщества осуществляют распределение ресурсов для выполнения заданий приложения на основе тендера вычислительных работ. На основе полученного распределения задания приложения направляются на выполнение в среду выделенных или невыделенных ресурсов. В настоящее время для виртуализации ресурсов и запуска виртуальных машин используется платформа OpenStack и гипер-визор QEMU-KVM. В качестве СУПЗ кластеров применяется система PBS Torque. Запуск виртуальных машин в невыделенных ресурсах производится с помощью специально разработанной гипервизорной оболочки в том случае, если выделенные ресурсы перегружены, а в расписании обслуживания очереди заданий PBS Torque имеются свободные окна.

Рис. 3. Схема выполнения задания в ГРВС Fig. 3. Job execution scheme in the heterogeneous distributed computing environment

Экспериментальный анализ масштабируемых приложений

Приведем пример применения предложенной системы классификации для ряда масштабируемых приложений, а также осуществления оценки ускорения и эффективности процессов выполнения пото-

ков их заданий.

Рассмотрим следующие приложения, выполненные в ГРВС:

1) приложение для исследования топливно-энергетического комплекса Вьет-

нама с точки зрения обеспечения его энергетической безопасности [11];

2) приложение для решения задач складской логистики [12];

3) приложение для исследования процессов обслуживания пациентов в лечебно-профилактических учреждениях [13];

4) приложение для исследования многоэкстремальных функций методом мультистарта [14].

Параметры приложений приведены

в таблице.

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

Параметры приложений

App

ication parameters

Приложение I Application C1 C2 C3 C4 C5 C6 C7 C8

1 1 - + + ГРВС I HDCE + Гибридная система / Hybrid system На основе априорной информации / Based on a priori information

2 N - - - ГРВС I HDCE + Гибридная система / Hybrid system На основе вычислительной истории / Based on the computational history

3 N - - - ГРВС I HDCE + Гибридная система / Hybrid system На основе вычислительной истории / Based on the computational history

4 1 - + + ГРВС I HDCE + СУПЗ / RMS На основе практических экспериментов / Based on the computational history

s- о ич e

го <¡s ад e (

« E к

i ? § >

& S _

1 ra мре aT

m

350

300

250

200

150

100

50

¡

■ Минимальное значение / Minimum value

-Среднее значение / Average value

♦ Максимальное значение / Maximum value

I

Приложение 1 I Application 1

Приложение 2 Application 2

I Приложение 3 Application 3

Приложение 4 I Application 4

0

I

Рис. 4. Время выполнения заданий Fig. 4. Job execution time

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

На рис. 6 показана эффективность вычислений при выполнении заданий при-

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

Число ядер / Number of cores

> c

с

ei ici

iff

ш

ь т с о

тк

е ф

ф

о

1

0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0

Рис. 5. Ускорение вычислений Fig. 5. Computation speedup

......Приложение 1 / Application 1

-----Приложение 2 / Application 2

— • • Приложение 3 / Application 3

--Приложение 4 / Application 4

-Эффективность равная 1 / Efficiency equal to 1

1 100 200 300 400 500 600 700 800 900 1000

Число выделенных ресурсов / Number of dedicated resources

Рис. 6. Эффективность вычислений Fig. 6. Computation efficiency

Применение системы классификации приложений позволяет выбрать наиболее подходящую систему управления заданиями. Так, например, время выполнения заданий приложений 1-3 под управлением гибридной системы, заданной в процессе классификации приложений, в сравнении с директивным назначением СУПЗ или ги-первизора показывает улучшение на 9, 11 и

12% соответственно. Распределение ресурсов для выполнения заданий этих приложений с учетом их классификации обеспечивает снижение накладных расходов до 7%. Все эксперименты выполнены в ГРВС, организованной на базе ресурсов Центра коллективного пользования (ЦКП) «Иркутский суперкомпьютерный центр СО РАН» [15].

Заключение

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

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

Работа выполнена при поддержке Российского фонда фундаментальных исследований, проекты № 16-07-00931 и № 17-47-380003, а также Программы 1.33П фундаментальных исследований Президиума РАН, проект «Разработка новых подходов к созданию и изучению сложных моделей информационно-вычислительных и динамических систем с приложениями».

Библиографический список

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

2. Duboc L., Rosenblum D., Wicks T. A Framework for Characterization and Analysis of Software System Scalability // Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. Dubrovnik, Croatia, ACM Publisher, 2007. P. 375-384.

3. Воеводин В.В. Решение больших задач в распределенных вычислительных средах // Автоматика и телемеханика. 2007. № 5. С. 32-45.

4. Соколинский Л.Б., Шамакина А.В. Методы управления ресурсами в проблемно-ориентированных вычислительных средах // Программирование. 2016. № 1. С. 26-38.

5. Tchernykh A., Schwiegelsohn U., Alexandrov V., Talbi E.G. Towards understanding uncertainty in cloud computing resource provisioning // Procedia Computer Science. 2015. Vol. 51. P. 1772-1781.

6. Малашенко Ю.Е., Назарова И.А. Управление ресурсоемкими вычислениями в условиях неопределенности. I. Многопараметрическая модель // Изве-

стия РАН. Теория и системы управления. 2014. № 4. С. 28-42.

7. Бычков И.В., Опарин Г.А., Феоктистов А.Г., Корсу-ков А.С. Распределение заданий в интегрированной кластерной системе на основе их классификации // Вычислительные технологии. 2013. Т. 18. № 2. С. 25-32.

8. Феоктистов А.Г. Методология концептуализации и классификации потоков заданий масштабируемых приложений в разнородной распределенной вычислительной среде // Системы управления, связи и безопасности. 2015. № 4. С. 1-25.

9. Bychkov I., Feoktistov A., Sidorov I., Kostromin R. Job Flow Management for Virtualized Resources of Heterogeneous Distributed Computing Environment // Procedia Engineering. 2017. Vol. 201. P. 534-542.

10. Бычков И.В., Опарин Г.А., Феоктистов А.Г., Кан-тер А.Н. Мультиагентный алгоритм распределения вычислительных ресурсов на основе экономического механизма регулирования их спроса и предложения // Вестник компьютерных и информационных технологий. 2014. № 1. С. 39-45.

11. Бычков И.В., Феоктистов А.Г., Сидоров И.А., Ко-

стромин Р.О., Зоркальцев В.И., Еделев А.В. Интел-лектная технология управления вычислениями в виртуализированной кластерной среде: материалы X Всерос. мультиконф. по проблемам управления: в 3 т. (Геленджик, 11-16 сентября 2017 г.). Таганрог: Изд-во Южного федерального университета, 2017. Т. 3. С. 84-86.

12. Bychkov I., Oparin G., Tchernykh A., Feoktistov A., Bogdanova V., Dyadkin Yu., Andrukhova V., Basharina O. Toolkit for Simulation Modeling of Logistics Warehouse in Distributed Computing Environment // Информационные технологии и нанотехнологии: сб. тр. III Междунар. конф. и молодежной школы (ИТНТ-2017) (Самара, 25-27 апреля 2017 г.). Самара:

Предприятие «Новая техника», 2017. С. 1106-1111.

13. Феоктистов А.Г., Дядькин Ю.А., Башарина О.Ю. Модель исследования процесса функционирования лечебно-профилактического учреждения // Техника и технологии: новые перспективы развития: сб. ст. Междунар. науч.-практ. конф. Уфа: АЭТЕРНА, 2017. С. 83-86.

14. Феоктистов А.Г., Горский С.А. Реализация метода мультистарта в пакете Градиент // Вестник НГУ. Серия: Информационные технологии. 2007. Т. 5. № 2. С. 78-82.

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

15. ЦКП «Иркутский суперкомпьютерный центр СО РАН» [Электронный ресурс]. http://hpc.icc.ru (01.10.2017).

References

1. Toporkov V.V. Modeli raspredelennykh vychislenii [Distributed computing models]. Moscow: Fizmatlit Publ., 2004. 320 p. (In Russian)

2. Duboc L., Rosenblum D., Wicks T. A Framework for Characterization and Analysis of Software System Scalability. Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. Dubrovnik, Croatia, ACM Publisher, 2007, pp. 375-384.

3. Voevodin V.V. Solution of large problems in distributed computing environments. Avtomatika i telemekhani-ka [Automation and Remote Control]. 20076 no. 5, pp. 32-45. (In Russian)

4. Sokolinskii L.B., Shamakina A.V. Methods of resource management in problem-oriented computing environment. Programmirovanie [Programming and Computer Software]. 2016, no. 1, pp. 26-38. (In Russian)

5. Tchernykh A., Schwiegelsohn U., Alexandrov V., Talbi E.G. Towards understanding uncertainty in cloud computing resource provisioning. Procedia Computer Science. 2015, vol. 51, pp. 1772-1781.

6. Malashenko Yu.E., Nazarova I.A. Control of resource-intensive computations under uncertainty.I. A multiparameter model. Izvestiya RAN. Teoriya i sistemy upravleniya [Journal of Computer and Systems Sciences International]. 2014, no. 4, pp. 28-42. (In Russian)

7. Bychkov I.V., Oparin G.A., Feoktistov A.G., Korsukov A.S. Distribution of jobs in integrated cluster system based on their classification. Vychislitel'nye tekhnologii [Computational Technologies]. 2013, vol. 18, no. 2, pp. 25-32. (In Russian)

8. Feoktistov A.G. The methodology of conceptualizing and classifying job flows of the scalable applications in a heterogeneous distributed computing environment. Sistemy upravleniya, svyazi i bezopasnosti [Systems of Control, Communication and Security]. 2015, no. 4, pp. 1-25. (In Russian)

9. Bychkov I., Feoktistov A., Sidorov I., Kostromin R. Job Flow Management for Virtualized Resources of Heterogeneous Distributed Computing Environment.

Procedía Engineering. 2017, vol. 201, pp. 534-542.

10. Bychkov I.V., Oparin G.A., Feoktistov A.G., Kanter A.N. Multiagent algorithm for resources allocation based on the economic mechanism of regulating their supply and demand. Vestnik komp'yuternykh i infor-matsionnykh tekhnologiy [Herald of Computer and Information Technologies]. 2014, no. 1, pp. 39-45. (In Russian)

11. Bychkov I.V., Feoktistov A.G., Sidorov I.A., Kostromin R.O., Zorkal'tsev V.I., Edelev A.V. Intellektnaya tekhnologiya upravleniya vychisleniyami v virtualiziro-vannoi klasternoi srede [Intelligent computing management technology in a virtualized clustered environment]. Materialy X Vserossiiskoi mul'tikonferentsii po prob-lemam upravleniya [Materials of X All-Russia multiconference on control problems]. Taganrog: Izdatel'stvo Yuzhnogo federal'nogo universiteta [Southern Federal University Publishers], 2017, vol. 3, pp. 84-86. (In Russian)

12. Bychkov I., Oparin G., Tchernykh A., Feoktistov A., Bogdanova V., Dyadkin Yu., Andrukhova V., Basharina O. Toolkit for Simulation Modeling of Logistics Warehouse in Distributed Computing Environment. Sbornik trudov III Mezhdunarodnoi konferentsii i molodezhnoi shkoly "Informatsionnye tekhnologii i nanotekhnologii (ITNT-2017)" [Proceedings of III International Conference and youth school "Information Technologies and Nanotechnologies" (ITNT-2017)]. Samara: Predpriyatie "Novaya tekhnika" Publ., 2017, pp. 1106-1111. (In Russian)

13. Feoktistov A.G., Dyad'kin Yu.A., Basharina O.Yu. Model' issledovaniya protsessa funktsionirovaniya lechebno-profilakticheskogo uchrezhdeniya [A research model of health and care center operation]. Sbornik statei Mezhdunarodnoi nauchno-prakticheskoi konfer-entsii "Tekhnika i tekhnologii: novye perspektivy razviti-ya" [Collected works of the International scientific and practical conference "Equipment and technologies: new development prospects]. Ufa: AETERNA Publ., 2017, pp. 83-86. (In Russian)

14. Feoktistov A.G., Gorskii S.A. Realizatsiya metoda mul'tistarta v pakete Gradient [Implementation of a mul-

ti-start method in the Gradient package]. Vestnik Novo-sibirskogo gosudarstvennogo universiteta. Seriya: In-formatsionnye tekhnologii [Novosibirsk State University Journal of Information Technologies]. 2007, vol. 5, no. 2, pp. 78-82. (In Russian)

Критерии авторства

Феоктистов А.Г., Корсуков А.С., Башарина О.Ю. имеют равные авторские права и несут равную ответственность за плагиат.

Конфликт интересов

Авторы заявляют об отсутствии конфликта интересов.

15. Tsentr kollektivnogo pol'zovaniya "Irkutskii superk-omp'yuternyi tsentr SO RAN" [Multi-Access Computing Center "Irkutsk Supercomputer Center of SB RAS"]. Available at: http://hpc.icc.ru (accessed 01 October 2017).

Authorship criteria

Feoktistov A.G., Korsukov A.S., Basharina O.Yu. have equal author's rights and bear equal responsibility for plagiarism.

Conflict of interests

The authors declare that there is no conflict of interests regarding the publication of this article.

Статья поступила 05.10.2017 г. The article was received on 05 October 2017

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