Научная статья на тему 'ОРГАНИЗАЦИЯ УПРАВЛЕНИЯ НАУЧНЫМИ ВЫЧИСЛЕНИЯМИ В ПАКЕТЕ ПРИКЛАДНЫХ МИКРОСЕРВИСОВ'

ОРГАНИЗАЦИЯ УПРАВЛЕНИЯ НАУЧНЫМИ ВЫЧИСЛЕНИЯМИ В ПАКЕТЕ ПРИКЛАДНЫХ МИКРОСЕРВИСОВ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
90
15
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГИБРИДНЫЕ ВЫЧИСЛЕНИЯ / МИКРОСЕРВИСЫ / МУЛЬТИАГЕНТНОЕ УПРАВЛЕНИЕ / ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ / КАЧЕСТВЕННЫЙ АНАЛИЗ / HYBRID COMPUTING / MICROSERVICES / MULTI-AGENT MANAGEMENT / BINARY DYNAMICAL SYSTEMS / QUALITATIVE ANALYSIS

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

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

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

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

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

ORGANIZATION OF SCIENTIFIC COMPUTATIONS MANAGEMENT IN THE PACKAGE OF APPLIED MICROSERVICES

In recent years, the integration of distributed and cloud computing technologies is observed in solving complex applied problems. The hybrid environment combines the reliability and availability of software running on local computers with the ability to scale computing to the cloud in peak load situations. The complexity of exhaustive problems with the properties of large-scale, openness, unpredictable dynamics, mobility of components determines the urgency of developing microservice-oriented software for solving them in a hybrid environment. The objective of the research is the further improvement of previously developed tools that automate the creation and use of an applied microservices package to organize the management of scientific computing in such an environment. A distributed computing model is represented by a set of autonomous computing microservices. Microservices' interaction is controlled by a self-organizing multi-agent system. Features of the architecture of agents and their functioning models are considered, they enable organizing parallel and pipeline-parallel multivariate calculations in a hybrid environment. We describe an example of usage of the applied microservices package based on the developed tools to solve the problems of qualitative analysis of binary dynamic systems. Solving these problems is based on the authors' Boolean constraint method. Based on this method, the feasibility verification of the required dynamical property is reduced to the feasibility check of constraints on the behavior of the trajectories of a dynamic system. For binary dynamical systems whose functioning is considered on a finite time interval, such restrictions are written in the language of Boolean equations or Boolean formulas with quantifiers. Our approach provides data parallelism and a significant increase in the dimension of the problems when solving them in a hybrid environment.

Текст научной работы на тему «ОРГАНИЗАЦИЯ УПРАВЛЕНИЯ НАУЧНЫМИ ВЫЧИСЛЕНИЯМИ В ПАКЕТЕ ПРИКЛАДНЫХ МИКРОСЕРВИСОВ»

Babenko Lyudmila Klimentevna - Southern Federal University; e-mail: [email protected]; Block "I", 2, Chehov street, Taganrog, 347928, Russia; phone: +79054530191; the department of security of information technologies; professor.

Pisarev Ilya Aleksandrovich - e-mail: [email protected]; 7, Kotlostroitelnaia street, Apt. 35, Taganrog, Russia; phone: +79885350837; the department of information technology security; postgraduate.

Kalmykov Igor Anatolyevich - North Caucasus Federal University; e-mail: [email protected]; 1A, Pushkina street, Stavropol, Russia; phone: +78652956546; the department of information security of automated systems; dr. of eng. sc.; professor.

УДК 004.4'2+004.75 DOI 10.23683/2311-3103-2019-7-121-132

И.В. Бычков, Г.А. Опарин, В.Г. Богданова, А.А. Пашимим

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

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

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

*

Исследование выполнено при поддержке РФФИ, проект № 18-07-00596, а также Президиума РАН, программа № 7, проект «Методы, алгоритмы и инструментальные средства децентрализованного группового решения задач в вычислительных и управляющих системах».

I.V. Bychkov, G.A. Oparin, V.G. Bogdanova, A.A. Pashinin

ORGANIZATION OF SCIENTIFIC COMPUTATIONS MANAGEMENT IN THE PACKAGE OF APPLIED MICROSERVICES

In recent years, the integration of distributed and cloud computing technologies is observed in solving complex applied problems. The hybrid environment combines the reliability and availability of software running on local computers with the ability to scale computing to the cloud in peak load situations. The complexity of exhaustive problems with the properties of large-scale, openness, unpredictable dynamics, mobility of components determines the urgency of developing microservice-oriented software for solving them in a hybrid environment. The objective of the research is the further improvement of previously developed tools that automate the creation and use of an applied microservices package to organize the management of scientific computing in such an environment. A distributed computing model is represented by a set of autonomous computing microservices. Microservices' interaction is controlled by a self-organizing multi-agent system. Features of the architecture of agents and their functioning models are considered, they enable organizing parallel and pipeline-parallel multivariate calculations in a hybrid environment. We describe an example of usage of the applied microservices package based on the developed tools to solve the problems of qualitative analysis of binary dynamic systems. Solving these problems is based on the authors' Boolean constraint method. Based on this method, the feasibility verification of the required dynamical property is reduced to the feasibility check of constraints on the behavior of the trajectories of a dynamic system. For binary dynamical systems whose functioning is considered on a finite time interval, such restrictions are written in the language of Boolean equations or Boolean formulas with quantifiers. Our approach provides data parallelism and a significant increase in the dimension of the problems when solving them in a hybrid environment.

Hybrid computing; microservices; multiagent management; binary dynamical systems; qualitative analysis.

Введение. В последние годы в связи с активным развитием технологий распределенных вычислений большую значимость приобрели вопросы автоматизации расчетных работ в научных исследованиях, в частности, при решении задач динамического анализа и структурно-параметрического синтеза систем управления с целью определения как совокупности требований к динамическим показателям функционирования, так и набора требуемых динамических свойств, которым должно отвечать поведение системы. В настоящее время наблюдается интеграция технологий распределенных и облачных вычислений при решении подобных ресурсоемких комплексных научных и прикладных задач. В ряде публикаций (например, [1-2]) поднимаются вопросы, связанные с разработкой инструментальных средств и предоставлением инфраструктур для перевода на микросервисную технологию научных приложений, для которых характерна динамичность ресурсных требований, в том числе приложений, ориентированных на использование в гибридной облачной среде [3, 4]. Гибридная облачная инфраструктура сочетает надежность и доступность работающего на локальных компьютерах программного обеспечения с возможностями масштабирования вычислений в облачную среду при возникновении пиковых нагрузок [1]. Модели интеграции облаков в гибридной среде рассматриваются в [5, 6]. В работе [7] представлена таксономия шаблонов развертывания облачных приложений. Выбор конкретного шаблона зависит от целей, для которых формируется гибридная инфраструктура и требований, предъявляемых к разрабатываемым сервис-ориентированным приложениям. В рамках наших исследований гибридная инфраструктура на основе шаблона, аналогичного «on-premises pattern» [6], используется для решения задач исследования динамики и структурно-параметрического синтеза двоичных динамических систем (ДДС) на основе метода булевых ограничений (Boolean Constraint Method, BCM [8]). Локальная облачная инфраструктура (on-premises cloud infrastructure) представляет

собой аппаратное обеспечение, связанное с облачными сервисами, которое, тем не менее, находится в пределах физического уровня клиента. Управление гибридными вычислениями основано на технологии, представленной авторами в [9], в которой фундаментальную роль играет алгоритмическое знание и распределенное сборочное программирование [10]. Первичным понятием в этой технологии является понятие пакета прикладных программ (ППП). Для реализации ППП в рамках облачной парадигмы вычислений используется микросервисный подход. Распределенная микросервисная модель представлена набором небольших, слабо связанных, заменяемых, взаимодействующих с использованием легковесных механизмов коммуникации автономных микросервисов [11], реализующих функции модулей ППП. Такой ППП далее будем называть пакетом прикладных микросервисов (Applied Microservices Package, AMP). В [12] описана разработанная ранее платформа для автоматизации и применения AMP. В настоящей статье представлено дальнейшее развитие этой платформы, в частности, модели динамики функционирования агентов, ориентированных на работу в гибридной среде, а также новая компонента, предоставляющая средства автоматизации формирования гибридной инфраструктуры и масштабирования вычислений в облачную среду. Приводится пример применения AMP для решения задач качественного исследования ДДС на основе BCM.

Автоматизация создания и применения AMP в гибридной инфраструктуре. Автоматизация распределенных научных вычислений при использовании гибридной облачной модели ориентирована на построение AMP на основе программной платформы HPCSOMAS-CMS (Cloud Micro-Services) (рис. 1), представляющей собой дальнейшее развитие разработанных ранее инструментальных средств, поэтапно происходившее следующим образом: сервис-ориентированные приложения [12], распределенные решатели [13], распределенный AMP [9], и, в рамках настоящего исследования, AMP для работы в гибридной среде. Для создания AMP предполагается выполнение следующих этапов: реализация прикладных модулей пакета в виде вычислительных микросервисов; создание и конфигурирование управляющих агентов, которым делегируются права на управление вычислительным микросервисом; создание и конфигурирование агентов постановки задачи (PSA-агентов); развертывание микросервисов на узлы вычислительного поля (ВП); тестирование микросервисов. Развернутая в приватном облаке на выделенном сервере (Virtual Dedicated Server, VDS) платформа HPCSOMAS-CMS предоставляет требуемые для автоматизированной разработки AMP web-сервисы (рис. 1). Новые механизмы развертывания и обновления микросервисов поддерживают синхронизацию облачных и установленных на компьютер пользователя баз знаний, обеспечивая дополнительную возможность работы с использованием развивающейся в настоящее время парадигмы Dew Computing [14]. В этом случае на локальный компьютер устанавливается Dew PSA-агент (DPSA). Шаблон «On-premises pattern» [6] расширяет сферу применения средств управления путем установки на облачные ресурсы специальных управляющих агентов HPCSOMAS-CMS - CPSA (Cloud PSA). Такие действия предполагают предварительную установку дополнительного программного обеспечения, а также определенный набор управляющих агентов в виде сервисов, зависящий от возможностей ресурса и спектра решаемых задач. Вычисления на ресурсе выполняются под управлением этих агентов, при этом зона их ответственности не выходит за рамки данного ресурса. Преимуществом такого шаблона является простота развертывания на широком спектре видов ресурсов. Для автоматизации установки на публичный облачный ресурс управляющих агентов в состав HPCSOMAS-CMS был включен новый компонент HPCMDPC (HPC Microservices Deployment to Public Cloud) (рис. 1).

Организация управления проведением вычислений в AMP. В разрабатываемых на основе новой технологии AMP используется трехуровневая схема управления вычислениями. На верхнем уровне находятся PSA-агенты, принимающие постановку задачи и отправляющие признаки вычислимости агентам DSA для проверки ее выполнимости в развернутом на выделенных ресурсах ВП и последующего решения (при положительном результате проверки). Агенты PSA (DPSA) осуществляют взаимодействие с пользователем. В гибридной среде, в отличие от распределенной, PSA взаимодействуют также с CPSA.

Рис. 1. Архитектура HPCSOMAS-CMS

На втором уровне DSA-агенты на основе механизмов самоорганизации и децентрализованного событийного управления «по готовности входных данных» формируют активную группу микросервисов Ag по непроцедурной постановке задачи (НПЗ) T = (A0; B0; D(A0)), или кратко T = (A0; B0) (где A0 = {аь a2, ..., a*}, B0 = {bb b2, ..., bn}, D(A0) - значения параметров из множества A0) с помощью логического вывода на распределенной базе знаний

KBM = (P, D, M, N, C, O, In, Out, Opm, Opp, Pr, Cmp, Cmo, Com), где объекты AMP P, D, M, N, C, O - конечные множества соответственно параметров (A°c P, B°cP), значений параметров, модулей, узлов ВП, процессоров и операций, а отношения In с PxM, Out с MxP, Opm с OxM, Opp с OxP, Pr с LxO (LcP), Cmp с CxP, Cmo с CxO, Com сMxN определяют взаимосвязи между соответствующими множествами и имеют тип "многие-ко-многим". В AMP в роли объектов-процессоров С [15] выступают агенты PSA, которые объединяют сходные по параметрам и методам исследования операции, хранят в локальной базе отношения Com, наборы сформированных по НПЗ групп Ag (для упрощения тестирования после обновления микросервисов). PSA с web-интерфейсом служат точкой входа в HPCSOMAS-CMS. Подробно структура AMP приведена в [15].

Модификаторы DSA-агентов = {"о","Vм,"р","с"}(соответственно обычный, вариантный, параллельный и условный) и усовершенствованная поведенческая модель DSA-агенга FFSMwVWM поддерживают возможность обработки динамически формируемых потоков однородных (полученных по одной НПЗ) и неоднородных (относящихся к разным НПЗ) задач, в дополнение к статически формируемому потоку, возможность обработки которого определялась ранее разработанной авторами моделью динамики функционирования этого агента FFSMwVW [13]. При готовности всех входных данных DSA-агент осуществляет инициацию СМА-агента. На третьем уровне агент СМА управляет запуском вычислительного модуля. Дискретно-событийная модель асинхронного функционирования агентов, которым делегированы права на выполнение микросервисов, имеет вид:

БГБМшУШМ = (2,5,5, X ,У, О, , ^, ^),

где

£ = {o■l,a2,...,■ Е = {епе2,...,е },

^ },

W = {^, w2

,} , О = ^ g2,..., ёпа },

- конечные множества соот-

х = {х^ Х2,..., ^}, У = {У^ У2,...,У„у} ветственно событий, состояний, программных работ, предикатов входных переменных, предикатов событий, двоичных входных и выходных переменных; 5: ExGxExXx YxS ^ SxY - функция перехода; 50 и sm - начальное и конечное состояния.

Граф переходов агентов, реализуемых на основе этой моделью поведения, для п = 18, от = 6, п„ = 18, пг = 9, п = 18, п = 3, п = 3 приведен на рис. 2.

2 > 'W 'О > Е ' х У

Рис. 2. Граф переходов агента, функционирующего на основе FFSMwVWM

Состояния агента по значениям элементов множества X определяются следующим образом: битовые значения x1 и x2, равные 10, 01, 00, 11, задают статус соответственно начального, конечного и вычислительного агентов; значение x3 = 0 в режимах прямой и обратной волны, в режиме совместных действий x3 = 1. Переход агента из одного состояния в другое происходит, если логическое выражение (над

дугой) становится истинным. В ряде состояний Sj агента или при переходе из одного состояния в другое агент выполняет программные действия (работы) wt. Двойной рамкой на рис. 2 выделены изменения по сравнению с [13] в поведении агента, а также новые события и работы, обусловленные поддержкой динамических многовариантных расчетов и использованием агентов в гибридной вычислительной среде.

В режиме совместных действий работа w7 в состоянии s4 конкретизируется

модификатором типа агента MAg (), определяющим разную программную

реализацию этой работы, содержательно представленную на рис. 2. Средства условного запуска модулей вычислительной модели приведены в [15]. Масштабирование вычислений в облако на верхнем уровне абстракции выглядит следующим образом. DSA управляют очередью сообщений, а CMA - очередью заданий. В случае перегрузки очереди CMA посылает сообщение об исчерпании ресурса. Срабатывает переход по логическому условию g8&e16 в состоянии s4 агента DSA, который отправляет запрос на дополнительный ресурс агенту PSA, где он зарегистрирован. PSA в случае, если в профиле пользователя, сформулировавшего НПЗ, установлена опция использования облачного ресурса, обращается к соответствующему агенту CPSA, который запускает Docker-контейнер с требуемым вычислительным агентом, возвращая в ответ сообщение о предоставлении ресурса и сетевым адресом для связи с ним. В противном случае выдается сообщение об отсутствии ресурса, и задания выполняются в порядке очереди CMA агента.

Вычислительные эксперименты. Вычислительные эксперименты проводились на задачах качественного исследования ДДС на основе BCM [8], в соответствии с которым проверка выполнимости в системе требуемого динамического свойства сводится к выполнимости некоторой совокупности ограничений на характер поведения траекторий ДДС. Для ДДС, функционирование которых рассматривается на конечном интервале времени, такие ограничения записываются на языке булевых уравнений или булевых формул с кванторами.

В первом эксперименте решена задача построения областей притяжения равновесных состояний автономной синхронной ДДС

х' = F ( л'"1) , (1)

где х - вектор состояния, х € B", B = {0,1}, n - размерность вектора состояния; '€T = {1,2,...,к} - дискретное время (номер такта); F(x) - векторная функция алгебры логики, называемая функцией переходов. Для каждого состояния х0 € B", называемого начальным состоянием, определим траекторию х(', х0) как конечную последовательность состояний х°,х1,...,хк из множества Bn.

Известно [16], что система булевых уравнений (1) с начальным состоянием х° €Bn для T = {1,2,...,к} эквивалентна одному булевому уравнению вида

к n

Фк(х°,х1,...,хк) = V V(х ® F(х'"1)) = 0. (2)

Для одношагового перехода уравнение (2) имеет вид:

n

Ф(х0, х1) = V( х1 ® F^0)) = 0. (3)

i=l

Используя работу [8], приведем необходимые булевы уравнения для решения задачи нахождения области притяжения равновесного состояния (аттрактора длины 1, далее просто аттрактора). Равновесные состояния являются решениями булева уравнения

Ф1(х°, x1) ^ = 0 • (4)

Все непосредственные предшественники х0 состояния s € Bn являются нулями булева уравнения

ФД x0, x1) ^ = 0 • (5)

Пусть X - неизолированный аттрактор. Область притяжения (бассейн аттрактора) - это множество всех состояний, из которых за t ^ к тактов достижимо множество X. Согласно [8], бассейн определяется множеством решений булева уравнения

ф (x0, x1,..., хк) v G'(xk) = 0 (6)

относительно переменных xk_1,xk~2,...,x°. Элементы множества X определяются нулями уравнения G (х)=0.

Подход к решению задач качественного исследования на основе BCM обусловил разработку микросервисов для создания булевых моделей и решения булевых уравнений. В составе AMP выделены два процессора: 1) C1, включающий операции для ввода описания динамики ДДС (1) в различных форматах, построения функции Ф1 из (3) по этому описанию, конвертирования Ф1 из одного формата в другой, упрощения полученных булевых ограничений; 2) C2, содержащий операции для построения булевых моделей различных динамических свойств на основе функции Ф1 и спецификаций свойств [8], нахождения решений SAT и QBF задач, постобработки результатов SAT и QBF решателей; специализированные встроенные объекты [15]. Особенности построения булевых моделей и высокая вычислительная сложность SAT и QBF задач обусловили выбор для эксперимента ресурсов ВП с гибридной инфраструктурой (табл. 1). Установка и конфигурирование агентов HPCSOMAS-CMS и дополнительного программного обеспечения (ПО) произведены с помощью разработанного компонента HPCMDPC.

Таблица 1

Состав гибридной инфраструктуры

Ресурс Тип ресурса ОС Установленное ПО

Агенты Дополнительное ПО

Узлы кластера Age

«Академик On-premises Linux PSA Ag7 Tomcat Server

В.М. Матросов» Ag9

[17] Agis

Private Cloud Agi SageMath VirtualBox

Windows CPSA Ags Docker Server

VDS Agi2 Docker Container

Public Cloud [18] Linux CPSA Kernel Virtual Machine Tomcat Server

Фрагмент вычислительной модели для решения рассматриваемой задачи представлен на рис. 3. Объекты приведенного фрагмента входят в состав процессора C2 AMP. Непроцедурная постановка для решения поставленной задачи имеет вид: T = {Фь; AB}. В процессе логического вывода формируется активная группа Ag = {Agb, Ag3, Ag6, Ag7, Ag9, Ag12, Ag13}. В режиме совместных действий выполняется цепочка операций BBMES (Agb) ^ EqSTV (Ag6, "v") ^ Y_ST (Ag9, "с") ^BBMIP (Ag3) ^ ImPR (Ag7, "c") ^ BBMAB (Ag12) ^ AttrBAS (Ag13). Операции

BBMES, BBMIP, BBMAB формируют булевы модели для поиска равновесного состояния (EqSTV), непосредственных предшественников (ImPR) для проверки изолированности аттрактора и построения области притяжения (AttrBAS) соответственно по уравнениям (4), (5) и (6). Агент Ag6 является вариантным и выполняет поиск итеративно, выдавая очередной вариант равновесного состояния var, чтобы во время поиска следующего варианта найденное состояние обрабатывалось по приведенной цепочке. Образуются конвейерные вычисления. Агенты, запускающие микросервисы по готовности входных данных, работают асинхронно. Поэтому в образовавшемся динамическом многовариантном расчете конвейерные работы могут выполняться параллельно.

Рис. 3. Фрагмент вычислительной модели (процессор C2)

Так, при поиске областей притяжения аттракторов для булевой модели генной сети «Arabidopsis Thaliana» из [19], уравнения динамики которой имеют вид:

X = xfv x?- xTv x^1; x| = x2—1; x3 = x?•X—; x> = X—1;

t t—1 t—1 t—1 t—1 t—1 t—1. t t—1. t t—1 t—1. t t—1 .

X5 ~ x 10 - x 13 v X7 - x 10 v X4 - x 10; X6 ~ X7 ; X7 ~ X13 v X6 ; X8 ~ X13 ;

t _ t—1 t—1 t—1 t—1.

X9 _ X9 - X15 v X9 - X10 ;

t t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1 t—1

X10 = x7 • X1— • X1— v X8 • X13 v x7 • xn v x7 • X1 — v x7 • x9 v x5 • x7 v x7 • X8 ;

t _t _t _ t—1 t—1 t—1.

X11 _ 1; X12 _ 1; X13 _ X5 ' X6 • X7 ;

X14 X5 * X14 • X15 •X 1vX10 • X14 • X15 'X 1vX7 'X 10vX7 'X 1; X15 X7 '

параллельно-конвейерные вычисления ускорили решение задачи более чем в 5 раз. Найдено 10 аттракторов длины 1, c размером областей притяжения 8, 440, 448, 512, 512, 256, 256, 15148, 568, 14600. Подробно конвейерно-параллельные вычисления рассмотрены авторами в [15].

Во втором эксперименте решена задача поиска коротких циклов в потоковом шифре Trivium, основанном на сдвиговом регистре, уравнения динамики которого имеют вид [20]:

X

i+1 _ V

— X„„ © X

287 ' X286 Ш X243 Ш X69 ^ X94

— x9з © X76 • Х'^75 © x264 Ш XL';

„i+1

Х178 _ Х1 77 ® Х1 76 ' Х1 75 ® Х264 ® Х162;

х'+1 = Х^, I € {2,3,...,93,95,...,177,179,...,288}.

Согласно [8] циклическая последовательность длины к является решением бУлева уравнения ф(Х», Х1,..., хъ)| Хк=Х. V[v К*(Х? • Х1! V Х . Х)] = 0, в кото-

ром в квадратных скобках представлены условия попарного различия множества состояний цикла длины к. Масштабирование вычислений в облачный ресурс позволило проверить наличие циклов длины к ^ 45 при параллельном поиске коротких циклов (13248 булевых переменных) за 1.8 часа, что существенно превысило возможности последовательного поиска - для к=30 (9216 переменных) время выполнения составило 6.77 часа, при этом для к=31 задача не была решена в пределах выделенного времени (12 часов) [20]. Ускорение и эффективность решения рассматриваемой задачи для заданной длины к от 35 до 45 при суммарном увеличении количества процессорных ядер гибридной среды приведено на рис. 4.

Рис. 4. Ускорение и эффективность поиска цикла длины к в гибридной среде

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

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

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

Navale V., Bourne P.E. Cloud computing applications for biomedical science: A perspective // PLOS Comp Biol. - 2018. - Vol. 14(6):e1006144.

Netto M. A., Calheiros R. N., Rodrigues E.R., Cunha R.L., Buyya R. HPC Cloud for Scientific and Business Applications: Taxonomy, Vision, and Research Challenges // ACM CSUR. - 2018. - Vol. 51 (1). - P. 8:1-8:29.

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

3. Mell P., Grance T. The NIST Definition of Cloud Computing. - 2011. - URL: https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf (дата обращения: 19.10.2019).

4. Bakshi K. Secure hybrid cloud computing: Approaches and use cases // IEEE Aerospace Conference, Big Sky, MT. - 2014. - P. 1-8.

5. Merkel D., Santas F., Heberle A., Ploom T. Cloud Integration Patterns // 4th European Conference on Service-Oriented and Cloud Computing (ESOCC), Taormina, Italy. - 2015. - P.199-213.

6. CSCC: Practical Guide to Cloud Computing. - URL: https://www.omg.org/cloud/ delivera-bles/CSCC-Practical-Guide-to-Hybrid-Cloud-Computing.pdf (дата обращения: 19.10.2019).

7. Ochei L.C., Petrovski A., Bass JM. A Novel Taxonomy of Deployment Patterns for Cloud-hosted Applications: A Case Study of Global Software Development (GSD) Tools and Processes // International Journal on Advances in Software. - 2015. - Vol. 8 (3 & 4). - P. 420-434.

8. Oparin G., Bogdanova V., Pashinin A. Qualitative analysis of autonomous synchronous binary dynamic systems // MESA. - 2019. - Vol. 10 (3). - P. 407-419.

9. Oparin GA., Bogdanova V.G., Pashinin A.A., Gorsky S.A. Microservice-oriented Approach to Automation of Distributed Scientific Computations // Proceedings of 42st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). - Riejka: IEEE, 2019. - P. 253-258.

10. Ершов А.П. Научные основы доказательного программирования // Вестник Академии Наук СССР. - 1984. - № 10. - С. 9-19.

11. Newman S. Building Microservices. O'Reilly, 2015.

12. Bychkov I. V., Oparin G.A., Bogdanova V.G., Pashinin A A., Gorsky SA. Automation Development Framework of Scalable Scientific Web Applications Based on Subject Domain Knowledge // In: Malyshkin V. (eds) Parallel Computing Technologies. PaCT 2017. Lecture Notes in Computer Science. - Springer, Cham, 2017. - Vol. 10421. - P. 278-288.

13. Бычков И.В., Опарин ГА., Богданова В.Г., Пашинин АА. Сервис-ориентированная технология создания и применения децентрализованных мультиагентных решателей вычислительных задач // Вестник компьютерных и информационных технологий. - 2018.

- № 12. - С. 36-44.

14. Wang Y. Cloud-dew architecture // International Journal of Cloud Computing. - 2015. - Vol. 4 (3).

- P. 199-210.

15. Bychkov I., Oparin G., Bogdanova V., Pashinin A. Intellectual technology for computation control in the package of applied microservices // Proceedings of the 1st International Workshop on Information, Computation, and Control Systems for Distributed Environments 2019. CEUR WS Proceedings, 2019. - Vol. 2430. - P. 15-28.

16. Bochmann D. Binare dinamische systeme. - Christian Posthof, Berlin, 1981.

17. ЦКП Иркутский суперкомпьютерный центр СО РАН. - Режим доступа: http://hpc.icc.ru/ (дата обращения: 18.10.2019).

18. https://firstvds.ru/ (дата обращения: 18.10.2019).

19. Dubrova E. Self-Organization for Fault-Tolerance. In: Hummel K.A., Sterbenz J.P.G. (eds) Self-Organizing Systems. IWSOS 2008. Lecture Notes in Computer Science. - Springer, Berlin, Heidelberg, 2008. - Vol. 5343. - P.145-156.

20. Dubrova E., Teslenko M. A SAT-Based Algorithm for Finding Short Cycles in Shift Register Based Stream Ciphers // IACR Cryptology ePrint Archive. - 2016: 1068.

REFERENCES

1. Navale V., Bourne P.E. Cloud computing applications for biomedical science: A perspective, PLOS Comp Biol, 2018, Vol. 14(6):e1006144.

2. Netto M. A., Calheiros R. N., Rodrigues E.R., Cunha R.L., Buyya R. HPC Cloud for Scientific and Business Applications: Taxonomy, Vision, and Research Challenges, ACM CSUR, 2018, Vol. 51 (1), pp. 8:1-8:29.

3. Mell P., Grance T. The NIST Definition of Cloud Computing, 2011. Available at: https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf (accessed 19 October 2019).

4. Bakshi K. Secure hybrid cloud computing: Approaches and use cases, IEEE Aerospace Conference, Big Sky, MT, 2014, pp. 1-8.

5. Merkel D., Santas F., Heberle A., Ploom T. Cloud Integration Patterns, 4th European Conference on Service-Oriented and Cloud Computing (ESOCC), Taormina, Italy, 2015, pp.199-213.

6. CSCC: Practical Guide to Cloud Computing. Available at: https://www.omg.org/cloud/deliverables/ CSCC-Practical-Guide-to-Hybrid-Cloud-Computing.pdf (accessed 19 October 2019).

7. Ochei L.C., Petrovski A., Bass J.M. A Novel Taxonomy of Deployment Patterns for Cloud-hosted Applications: A Case Study of Global Software Development (GSD) Tools and Processes, International Journal on Advances in Software, 2015, Vol. 8 (3 & 4), pp. 420-434.

8. Oparin G., Bogdanova V., Pashinin A. Qualitative analysis of autonomous synchronous binary dynamic systems, MESA, 2019, Vol. 10 (3), pp. 407-419.

9. Oparin GA., Bogdanova V.G., Pashinin A.A., Gorsky S.A. Microservice-oriented Approach to Automation of Distributed Scientific Computations, Proceedings of 42st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). Riejka: IEEE, 2019, pp. 253-258.

10. Ershov A.P. Nauchnoe osnovy dokazatel'nogo programmirovaniya [Scientific basis of evidence-based programming], Vestnik AN SSSR [Herald of the Russian Academy of Sciences], 1984, No. 10, pp. 9-19.

11. Newman S. Building Microservices. O'Reilly, 2015

12. Bychkov I. V., Oparin G. A., Bogdanova V.G., Pashinin A.A., Gorsky S.A. Automation Development Framework of Scalable Scientific Web Applications Based on Subject Domain Knowledge, In: Malyshkin V. (eds) Parallel Computing Technologies. PaCT 2017. Lecture Notes in Computer Science. Springer, Cham, 2017, Vol. 10421, pp. 278-288.

13. Bychkov I.V., Oparin G.A., Bogdanova V.G., Pashinin A.A. Servis-oriyentirovannaya tekhnologiya sozdaniya i primeneniya detsentralizovannykh multiagentnykh reshateley vychislitelnykh zadach [Service-oriented technology for development and application of decentralized multiagent solvers for applied problems], Vestnik kompyuternykh i informatsionnykh tekhnologiy [Herald of computer and information technologies], 2018, No. 12, pp. 36-44.

14. Wang Y. Cloud-dew architecture, International Journal of Cloud Computing, 2015, Vol. 4 (3), pp. 199-210.

15. Bychkov I., Oparin G., Bogdanova V., Pashinin A. Intellectual technology for computation control in the package of applied microservices, Proceedings of the 1st International Workshop on Information, Computation, and Control Systems for Distributed Environments 2019. CEUR WS Proceedings, 2019, Vol. 2430, pp. 15-28.

16. Bochmann D. Binare dinamische systeme. Christian Posthof, Berlin, 1981.

17. TSKP Irkutskiy superkomp'yuternyy tsentr SO RAN [Irkutsk Supercomputer Centre of SB RAS]. Available at: http://hpc.icc.ru/ (accessed 18 October 2019).

18. Available at: https://firstvds.ru/ (accessed 18 October 2019).

19. Dubrova E. Self-Organization for Fault-Tolerance. In: Hummel K.A., Sterbenz J.P.G. (eds) Self-Organizing Systems. IWSOS 2008. Lecture Notes in Computer Science. Springer, Berlin, Heidelberg, 2008, Vol. 5343, pp.145-156.

20. Dubrova E., Teslenko M. A SAT-Based Algorithm for Finding Short Cycles in Shift Register Based Stream Ciphers, IACR Cryptology ePrint Archive, 2016: 1068.

Статью рекомендовала к опубликованию д.ф.-м.н. Г.С. Курганская.

Бычков Игорь Вячеславович - Институт динамики систем и теории управления им.

В.М. Матросова СО РАН; e-mail: [email protected]; 664033, г. Иркутск, ул. Лермонтова, 134;

тел.: 427100; директор; академик РАН; д.т.н.; профессор.

Опарин Геннадий Анатольевич - e-mail: [email protected]; тел.: 428925; зам. директора; д.т.н.;

профессор.

Богданова Вера Геннадьевна - e-mail: [email protected]; тел.: +79248349573; с.н.с.; к.т.н.; доцент.

Пашинин Антон Алексеевич - e-mail: [email protected]; тел.: +79148868361; м.н.с.

Bychkov Igor Vyacheslavovich - Matrosov Institute for System Dynamics and Control Theory of SB RAS; e-mail: idstu @icc.ru; 134, Lermontov street, Irkutsk, 664033, Russia; phone: 427100; director; academician of RAS; dr. of eng. sc.; professor.

Oparin Gennadiy Anatolyevich - e-mail: [email protected]; phone: 428925; deputy director; dr. of eng. sc.; professor.

Bogdanova Vera Gennadyevna - e-mail: [email protected]; phone: +79248349573; senior researcher; cand. of eng. sc.; associate professor.

Pashinin Anton Alekseevich - e-mail: [email protected]; phone: +79148868361; junior researcher.

УДК 004.4.242 DOI 10.23683/2311-3103-2019-7-132-142

С.А. Дудко, И.И. Левин

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

В настоящее время одной из проблем, возникающих при решении прикладных задач на программируемых логических интегральных схемах, является необходимость выравнивания (синхронизации) цифровых сигналов по фронтам для устойчивой (стабильной) работы вычислительной схемы. Существующие подходы к решению данной проблемы имеют ряд недостатков - требуют большего количества аппаратного ресурса или значительно увеличивают время разработки. Для эффективного решения этой проблемы необходимо объединить в одном методе преимущества существующих систем (получить гарантированное решение в сжатые временные сроки) и при этом избавиться от их недостатков. В данной работе рассматривается возможность реализации такого метода - метода автоматической расстановки триггеров синхронизации. В основе предложенного метода лежит учет коэффициента максимального ветвления при расстановке триггеров синхронизации, так как существующие средства автоматизированного проектирования не могут справиться с синтезом задач, имеющих высокий коэффициент ветвления элементов, при заполнении кристалла, близком к максимальному (80-90 %). Основной задачей разработанного метода является соблюдение баланса между устойчивой работой схемы и оптимизацией занимаемого аппаратного ресурса, требующегося для синхронизации сигналов. Предлагаемый метод был реализован в многокристальном синтезаторе схемотехнических решений Fire!Constructor, который является частью среды проектирования COLAMO, позволяющей создавать эффективные параллельные программы с производительностью, близкой к производительности решений, полученных при программировании с использованием языков описания аппаратуры. Оценка эффективности полученного решения проводилась на задачах из области линейной алгебры, цифровой обработки сигналов, а также символьной обработки данных. Применение предложенного метода позволило получить решения, которые были успешно синтезированы с помощью средств автоматизированного проектирования Xilinx Vivado 2018.2 на частотах в диапазоне от 250 до 400 МГц. В результате проведенных исследований было выявлено, что применение разработанного метода приводит к сокращению времени на разработку и тестирование программ для РВС при решении прикладных задач от нескольких дней (2-3) при ручной расстановке триггеров (из-за необходимости перетрансляции решений средствами САПР), до нескольких (1-2) минут. При этом суммарный аппаратный ресурс не более чем на 5 % превышает ресурс, получаемый при ручной (условно оптимальной) расстановке.

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

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