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

Труды ИСП РАН, том 27, вып. 6, 2015 г..

Модель проблемно-ориентированной облачной вычислительной среды1

Г.И. Радченко <gleb.radchenko@susu.ru>

Южно- Уральский государственный университет,

454080, Россия, г. Челябинск, проспект Ленина, д. 76.

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

Ключевые слова: облачные вычисления; модель вычислительной среды;

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

1. Введение

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

Этот тренд привел к появлению особой научной дисциплины, названной «Computational Science» («Вычислительная наука»). Вычислительная наука -

1 Работа выполнена при поддержке Российского фонда фундаментальных исследований, грант № 15-29-07959 офи-м.

275

Trudy ISP RAN [The Proceedings of ISP RAS], vol. 27, issue 6, 2015.

это быстро развивающаяся мульти-дисциплинарная научная дисциплина, использующая передовые вычислительные методы для решения сложных задач, объединяющая в себе методы, алгоритмы и программное обеспечение для компьютерного моделирования, разработанные для решения сложных научных и инженерных задач; а также аспекты фундаментальной информатики и информационных технологий, обеспечивающие развитие аппаратных, программных, сетевых компонентов и СУБД необходимых для решения таких вычислительно-сложных задач [2]. Примерами разделов вычислительной науки являются такие дисциплины как биоинформатика, вычислительная химия, вычислительная гидродинамика, вычислительная инженерия и др.

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

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

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

276

Труды ИСП РАН, том 27, вып. 6, 2015 г.

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

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

2. Модель предметной области

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

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

Дадим определение предметной области посредством на основе понятия информационного объекта.

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

Будем считать, что мы можем определить размер любого базового информационного объекта множества В (в байтах). Обозначим размер базового информационного объекта Ъ как |6|:

Определим класс информационных объектов С следующим образом:

1) базовый класс информационных объектов будет являться классом информационных объектов:

к

i=l

277

Trudy ISP RAN [The Proceedings of ISP RAS], vol. 27, issue 6, 2015.

C = (B),VBeB;

2) упорядоченный набор базовых классов информационных объектов будет являться классом информационных объектов:

С = (Вг...Вт), (VI е {1..тЩ е В;

3) упорядоченный набор ранее определенных классов информационных объектов так же будет являться классом информационных объектов:

С = (Сг...CJ.

Таким образом, информационный объект I класса С = (С1(Си) представляет собой упорядоченный набор конечного числа информационных объектов

1 = 0....U

где Ц - это:

1) (Ь), где Ь е В, если С; = (В);

2) (Ь1(...,Ьт),где (VI е {1,...,rn})bj 6 Вьесли^ = (В1(...,Вт);

3) — »/£у). где (V/ Е (1,... ,у})/( - это информационный объект класса CiL, если Q = (с;1,...,

Будем говорить, что базовый информационный объект b входит в информационный объект / (Ь 6 /), если выполняется одно из следующих условий:

1) I = (Ь);

2) I = (Ъг, ...,Ьт)иЬ е (Ьг, ...,Ь2У,

3) / = (/i./п)иЭ/;|Ь е/г.

Определим множество классов информационных объектов С как конечное множество всех определенных в рамках предметной области классов информационных объектов:

\с\

е = [>

i = l

Определим набор функций Т над множеством С:

1Я

Т = У п, где (Vi 6 {1..|В|} )/;: С/» Ctout

i=l

Каждая функция /6 В на вход получает п информационных объектов Jm = соответствующих классов С1П = (С,,..., Сп). Результатом

работы функции являются ш новых информационных объектов Jout = (I°ut,..., I(nlt) соответствующих классов Cout = (С[,..., Ст'п).

Таким образом, определим предметную область ф как упорядоченную тройку:

ф = <в.е.т),

278

Труды ИСП РАН, том 27, вып. б, 2015 г..

где Ъ - множество базовых информационных объектов, С - множество классов информационных объектов, Т - множество функций, определенных над С.

3. Модель проблемно-ориентированной облачной вычислительной среды

Определим проблемно-ориентированную облачную вычислительную среду как четверку:

еде,9л,Ф),

где 91 - множество узлов вычислительной системы; (£ - множество сетевых соединений, связывающих вычислительные узлы; 9Л - множество образов виртуальных вычислительных машин, доступных для развертывания на узлы из множества 91, ф - базовая предметная область.

Вычислительным узлом п £ 91 назовем вычислительную систему с общей памятью, представленную тройкой:

(Рп, Hi п, П„),

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

Образом виртуальной машины тп £ 9Л назовем тройку:

(fjn> тт, Пт),

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

Определим характеристику производительности вычислительной машины как отображение:

7г:тп -> Ж>0,

где тп - образ это виртуальной машины (либо вычислительный узел) существующий в вычислительной системе К.

Примерами характеристик производительности могут служить числовые характеристики машины, результаты синтетических тестов (Dhrystone [9], SuperPI [10], UNPACK [11], LAPACK [12] и др.) или результаты тестового выполнения конкретных классов функций с заранее определенными наборами входных данных.

Очевидно, что для качественного прогнозирования параметров выполнения задач на заданных машинах, нам необходимо учитывать максимально возможное количество характеристик производительности, включая такие характеристики как: количество доступных процессоров; частота процессора; скорость обмена данными с жестким диском; характеристика машины по UNPACK и др. Таким образом, определим вектор характеристик производительности виртуальных машин, развернутых в облачной вычислительной системе С:

279

Trudy ISP RAN [The Proceedings of ISP RAS], vol. 27, issue 6, 2015.

П = [7Г1(7Г2 ... 7ГГ].

Каждой машине m 6 9Л облачной вычислительной системы К сопоставим вектор характеристик производительности, отражающий значения производительности вычислительной машины:

П:9Л -> Z>0.

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

1) функция оценки объема выходных данных при определенных входных параметрах;

2) функция оценки времени выполнения задачи при определенных входных параметрах на машине с указанным вектором характеристик производительности.

Таким образом, для каждой функции / 6 F из предметной области выполняющейся в проблемно-ориентированной среде (Г, определим следующий набор операторов:

1) оператор ожидаемого выхода v(f, Зт) - это оператор, возвращающий ожидаемый общий размер в байтах всех выходных информационных объектов Jout\

v{f,j^) = \rut\= ^ £|ь|.

vie30Ut vbei

2) оператор ожидаемого времени выполнения функции T(f,3in, П), возвращающий оценочное время выполнения (в секундах) функции / при заданном множестве входных информационных объектов 31п на машине, с вектором характеристик производительности П:

т: (f,3in, П) -> N.

Время выполнения функции f\Cm -» Cout на конкретной машине с вектором характеристик производительности П можно представить в виде оператора, зависящего от вектора входных информационных объектов Зт. К сожалению, невозможно оценить время выполнения функции с идеальной точностью, т.к. вычислительная работа подготовки набора выходных информационных объектов 30Ut может косвенно зависеть от множества факторов, которые наша

280

Труды ИСП РАН, том 27, вып. 6, 2015 г.

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

X(f,n,Jin) = T(f,T\,3in) + a,

где т(Л Гит) - детерминированная функция, представляющая зависимость времени выполнения функции / на машине с вектором характеристик производительности П от вектора входных информационных объектов Jin, а -это стохастическая величина с нулевым математическим ожиданием (М[а] = 0), представляющая факторы, не входящие в разрабатываемую модель.

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

4. Заключение

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

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

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

[1] . Glotzer S.C. International assessment of research and development in simulation-based

engineering and science. Imperial College Press, 2011. 312 p. doi:

10.1142/9781848166981.

[2] . Reed D. et al. Computational Science: Ensuring America’s Competitiveness. United

States. President’s Information Technology Advisory Committee. National Coordination Office for Information Technology Research & Development, 2005. 104 p.

281

Trudy ISP RAN [The Proceedings of ISP RAS], vol. 27, issue 6, 2015.

[3] . Folino G. et al. A grid portal for solving geoscience problems using distributed

knowledge discovery services. Future Generation Computer Systystems, 26(1), 2010. P. 87-96. doi: 10.1016/j.future.2009.08.002.

[4] . Walker D.W. et al. The software architecture of a distributed problem-solving

environment. Concurrency: Practice and Experience, 12(15), 2000. P. 1455-1480.

[5] . Радченко Г.И. Распределенные виртуальные испытательные стенды:

использование систем инженерного проектирования и анализа в распределенных вычислительных средах. Вестник ЮУрГУ. Серия “Математическое моделирование и программирование”, том 10, № 37(254), 2011 г. стр. 108-121.

[6] . Deelman Е. et al. Workflows and e-Science: An overview of workflow system features

and capabilities. Future Generation Computer Systystems, 25(5), 2009. P. 528-540.

[7] . Bil C. Concurrent Engineering in the 21st Century. Concurrent Engineering in the 21st

Century: Foundations, Developments and Challenges, 2015. P. 421^154.

doi: 10.1007/978-3-319-13776-6.

[8] . Шамакина A.B., Соколинский Л.Б. Исследование алгоритма планирования POS

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

вычислительные технологии труды международной научной конференции (31 марта - 2 апреля 2015 г., г. Екатеринбург), 2015. стр. 488^193.

[9] . Weicker R.P. Dhrystone: a synthetic systems programming benchmark.

Communications of the ACM, 27(10), 1984. P. 1013-1030.

doi: 10.1145/358274.358283.

[10] . WPrime Systems. Super PI. 2013. URL: http://www.superpi.net/ (дата обращения:

14.11.2015).

[11] . Dongarra J.J., Luszczek P., Petite A. The LINPACK benchmark: Past, present and

future. Concurrency and Computation: Practice and Experience. 15(9), 2003. P. 803-820. doi: 10.1002/cpe.728.

[12] . Demmel I, Dongarra I, Parlett B. Prospectus for the next LAPACK and ScaLAPACK

libraries // PARA'06 Proceedings of the 8th international conference on Applied parallel computing: state of the art in scientific computing, 2006. P. 11-23. doi: 10.1007/978-3-540-75755-9.

282

Труды ИСП РАН, том 27, вып. 6, 2015 г..

Model of problem-oriented cloud computing environment

G. Radchenko <gleb.radchenko@susu.ru>

South Ural State University,

454080, Russian Federation, Chelyabinsk, Lenina pr-kt, 76

Abstract. For efficient use of high-performance computing resources while implementing Computational Science methods for the study of physical, biological and social problems one can use problem-oriented distributed computing environments approach. They provide users with transparent access to the solution of specific classes of applications based on the available computing resources. To increase the effectiveness of such environments, one must use problem-oriented planning methods, which use the information about the subject area for predicting computing problems performance for optimal tasks planning and allocation. In the article the models of the subject area and problem-oriented cloud computing environment, focused on supporting the development of new problem-oriented scheduling algorithms are presented. Subject area P is defined as an ordered triple, consisting of a set of basic information objects B, the set of information object classes C and a set of functions defined over C. The task-oriented cloud computing environment can be defined as an ordered quadruple consisting of the set of nodes of a computer system N\ a set of network connections E\ a set of virtual machines images M, the basic subject area P. It should be required that within a problem-oriented computing environment the following functions for the prediction of the task execution, depending on the values of the input parameters for each class of problems were identified: the estimation of the amount of output data when a certain set of input parameters is given; the evaluation function of task execution time, given certain input parameters on the machine with the specified performance characteristics vector. Since it is impossible to estimate the time of the task execution with a perfect accuracy, task runtime evaluation should be modeled as a random variable. The provided model allows tasks execution time and output parameters volume evaluation through the collection, storage and analysis of statistics for all problems, executed in the environment.

Keywords: cloud computing; computing environment model; distributed computing system; problem-oriented computing environment.

References

[1]. Glotzer S.C. International assessment of research and development in simulation-based engineering and science. Imperial College Press, 2011. 312 p. doi:

10.1142/9781848166981.

283

Trudy ISP RAN [The Proceedings of ISP RAS], vol. 27, issue 6, 2015.

[2] . Reed D. et al. Computational Science: Ensuring America’s Competitiveness. United

States. President’s Information Technology Advisory Committee. National Coordination Office for Information Technology Research & Development, 2005. 104 p.

[3] . Folino G. et al. A grid portal for solving geoscience problems using distributed

knowledge discovery services. Future Generation Computer Systystems, 26(1), 2010. P. 87-96. doi: 10.1016/j.future.2009.08.002.

[4] . Walker D.W. et al. The software architecture of a distributed problem-solving

environment. Concurrency: Practice and Experience, 12(15), 2000. P. 1455-1480.

[5] . Radchenko G.I. Raspredelennye virtual'nye ispytatel'nye stendy: ispol'zovanie sistem

inzhenemogo proektirovanija i analiza v raspredelennykh vychislitel'nykh sredakh. [Distributed virtual test-beds: usage of CAE systems in distributed computing environments] Vestnik JuUrGU. Serija “Matematicheskoe modelirovanie i programmirovanie” [SUSU Bulletin: The "Mathematical Modeling and Programming" series], vol 10, No 37(254), 2011. pp. 108-121. (In Russian).

[6] . Deelman E. et al. Workflows and e-Science: An overview of workflow system features

and capabilities. Future Generation Computer Systystems, 25(5), 2009. P. 528-540.

[7] . Bil C. Concurrent Engineering in the 21st Century. Concurrent Engineering in the 21st

Century: Foundations, Developments and Challenges, 2015. P. 421—454.

doi: 10.1007/978-3-319-13776-6.

[8] . Shamakina A.V., Sokolinsky L.B. Issledovanie algoritma planirovanija POS dlja

problemno-orientirovannykh vychislitel'nykh sred [Sudy of the the POS scheduling algorithm for problem-oriented computing environments] Parallel'nye vychislitel'nye tekhnologii trudy mezhdunarodnoj nauchnoj konferencii (31 marta - 2 aprelja 2015 g., g. Ekaterinburg) [Parallel Computing Technologies: proceedings of the International Scientific Conference (31 March - 2 April 2015 Ekaterinburg)], 2015. pp. 488-493. (In Russian).

[9] . Weicker R.P. Dhrystone: a synthetic systems programming benchmark.

Communications of the ACM, 27(10), 1984. P. 1013-1030.

doi: 10.1145/358274.358283.

[10] . WPrime Systems. Super PI. 2013. URL: http://www.superpi.net/ (дата обращения:

14.11.2015).

[11] . Dongarra J.J., Luszczek P., Petite A. The UNPACK benchmark: Past, present and

future. Concurrency and Computation: Practice and Experience. 15(9), 2003. P. 803-820. doi: 10.1002/cpe.728.

[12] . Demmel J., Dongarra J., Parlett B. Prospectus for the next LAPACK and ScaLAPACK

libraries // PARA'06 Proceedings of the 8th international conference on Applied parallel computing: state of the art in scientific computing, 2006. P. 11-23. doi: 10.1007/978-3-540-75755-9.

284