=Paper=
{{Paper
|id=Vol-1787/119-123-paper-19
|storemode=property
|title=Распределенная вычислительная сеть MarGrid на базе компьютеров республики Марий Эл
(Distributed computing system MarGrid based on Republic of Mari El computers)
|pdfUrl=https://ceur-ws.org/Vol-1787/119-123-paper-19.pdf
|volume=Vol-1787
|authors=Vladimir Bezrodnyi,Anatoly Leukhin,Nikolay Parsaev,Aleksandr Ivanov,Khoshim Rahmanov
}}
==Распределенная вычислительная сеть MarGrid на базе компьютеров республики Марий Эл
(Distributed computing system MarGrid based on Republic of Mari El computers)==
Распределенная вычислительная сеть MarGrid на базе компьютеров республики Марий Эл В.И. Безродный1,a, А.Н. Леухин1, Н.В. Парсаев1, А.Н. Иванов1, Х.Р. Рахманов2 1 Марийский государственный университет 2 Ташкентский университет информационных технологий Email: a vova.bezrodny@gmail.com В статье рассматривается архитектура и особенности реализации распределенной вычисли- тельной сети MarGrid для решения задач, обладающих высокой вычислительной сложностью. Ключевые слова: распределенная сеть, кластер, клиент-сервер. Работа выполнена при финансовой поддержке гранта РФФИ № 15-07-99514. © 2016 Владимир И. Безродный, Анатолий Н. Леухин, Николай В. Парсаев, Александр Н. Иванов, Хошим Р. Рахманов 119 Введение Согласно парадигме клиент — серверной архитектуры несколько клиентов и не- сколько серверов совместно с промежуточным программным обеспечением и средой взаимодействия образуют единую систему, обеспечивающую распределенные вычисле- ния, анализ и представление данных. Использование клиент — серверного подхода по- зволило пользователю персонального компьютера получить доступ к различным ресур- сам удаленных серверов, таких как базы данных, файлы, принтеры, процессорное время и др. В базовой модели клиент — сервер все процессы в распределенных системах делятся на две возможно перекрывающиеся группы. Процессы, реализующие некоторый сервис, например, сервис файловой системы или базы данных, называются серверами. Процессы, запрашивающие сервисы у серверов путем посылки запроса и последующего ожидания ответа от сервера, называются клиентами. Описание РВС MarGrid [Leukhin, Shuvalov… Modul planirovshchika…, Leukhin, Shuvalov… Modul upravleniya …, Distributed computer system MarGrid…] представляет собой клиент- серверную распределенную вычислительную сеть (РВС), построенная на базе трехуров- невой архитектуры (клиентская часть приложения - сервер приложения - сервер базы данных). Для обмена сообщениями между клиентом и сервером используется программ- ный фреймворк Windows Communication Foundation (входящий в состав .NET Framework). Хостовым процессом на клиенткой стороне является одна из служб Windows (фоновый процесс для других ОС), на стороне сервера - само серверное приложение (ав- тохостинг). На рис. 1 представлена структурная схема распределенной вычислительной сети MarGrid. РВС MarGrid использует централизованный метод обнаружения ресурсов, так же используется централизованная доступность ресурсов, узлы взаимодействуют центра- лизовано. Рис 1. Структурная схема РВС MarGrid. 120 Серверная часть РВС MarGrid Клиентская часть РВС MarGrid состоит из: Сервер. Является центральным звеном РВС MarGrid, обеспечивает полное дуплексное клиент-серверное соединение. Администратор. Представляет собой графическое приложение и предназна- чен для добавления, удаления и редактирования задач вычислительной сети, запуска \ остановки задач на стороне компьютера-клиента, обновления кли- ентской части приложения, а так же сбор результатов выполненных задач вычислительной сети. Данный модуль взаимодействует с базой данных, в ко- торой хранится все множество задач, требуемых вычислений, а также необ- ходимые начальные параметры, конкретные для каждой задачи. Модуль распределения задач. Предназначен для распределения вычисли- тельных задач между компьютерами-клиентами, подключенными в общую вычислительную сеть. Данный модуль взаимодействует с базой данных, в ко- торой хранится все множество задач, требуемых вычислений, а также необ- ходимые начальные параметры, конкретные для каждой задачи. Модуль оп- ределяет характеристики конкретного компьютера-клиента, такие как тип операционной системы, ее разрядность, тип процессора, количество его про- цессоров и потоков, вычислительные возможности, наличие новых процес- сорных технологий (например, SSE4.2) и т.д., и выдает наиболее оптималь- ную в соответствии с характеристиками задачу. Сервер базы данных. Клиентская часть РВС MarGrid Клиентская часть РВС MarGrid состоит из: WCF-служба. Проверяет наличие последних обновлений и запускает акту- альную версию клиента. Клиент-приложение. Подключается к серверу, авторизуется \ регистрирует нового клиента, сообщает о имеющихся ресурсах, скачивает и запускает не- обходимое число задач. Приложение по настройке клиентской части MarGrid. Модуль активности пользователя. В режиме динамической производительно- сти уменьшает число запускаемых задач при активной работе пользователя (нажатие клавиш, движение мыши, высокая загрузка ЦП). Для того, чтобы задача могла использовать ресурсы, предоставляемые системой MarGrid, она должна обладать следующими характеристиками [Distributed computer system MarGrid…]: Задача должна представлять собой исполняемый файл (с расширением .exe или .com), являющийся однопоточным приложением, а также необходимое количество сопроводительных файлов (библиотек, файлов конфигурации и др.). Если требуется передача в исполняемый файл параметров, то они должны передаваться как параметры командной строки. Исполняемый файл задачи никоим образом не должен взаимодействовать с действиями пользователя. Вывод найденной информации должен осуществляться в стандартный поток вывода. Для осуществления сохранения вычислительного состояния задачи необхо- димо предусмотреть возможность сохранения вычислительного состояния задачи. Это могут быть какие-либо промежуточные переменные, значения счетчиков и т.д.. Такие данные должны сохраняться программой-задачей в 121 файл "stage.stg", располагающийся в той же директории, что и программа- задача. При первом запуске программы-задачи она должна определять нали- чие файла стадий в идентичной директории на диске и, в случае его нахож- дения, загружать из него необходимые переменные для возобновления ста- дии расчета. Если же файла не существует, но начать поиск сначала. В случае успешного завершения задачи, она должна возвращать код завер- шения 0. В противном случае будет считаться, что произошел сбой задачи. Состав распределенной вычислительной сети MarGrid На 25.05.16 MarGrid объединяет 670 компьютеров и серверов ФГБОУ ВО "Марий- ского государственного университета", ФГБОУ ВО "Поволжского государственного уни- верситета" и общеобразовательных школ г.Йошкар-Олы с потенциальной вычислитель- ной производительностью до 106TFlops и до 5000 одновременно выполняющихся задач. Табл. 1. Сводная таблица основных клиентов РВС MarGrid. Модель процессора Коли- Физиче- Логические GFlops чество ские ядра ядра Intel(R) Xeon(R) CPU E5-2690 110 12 24 550 v3 @ 2.60GHz Intel(R) Xeon(R) CPU E5-2690 6 10 20 370 v2 @ 3.00GHz Intel(R) Xeon(R) CPU 10 4 8 50 E5520 @ 2.27GHz Intel(R) Core(TM) i7-4770 229 4 8 110 CPU @ 3.40GHz Intel(R) Core(TM) i3-2100 62 2 4 67 CPU @ 3.10GHz Intel(R) Core(TM) i5-2400 52 4 4 55 CPU @ 3.10GHz Pentium(R) Dual-Core CPU 50 2 2 20.8 E5300 @ 2.60GHz Intel(R) Core(TM) i5-3470 49 4 4 102.4 CPU @ 3.20GHz Intel(R) Core(TM) i3-3220 46 2 4 53 CPU @ 3.30GHz Intel(R) Core(TM) i3-2120 30 2 4 52.8 CPU @ 3.30GHz Intel(R) Core(TM) i7-3770 25 4 8 108.8 CPU @ 3.40GHz Intel(R) Core(TM) i5 CPU 14 4 4 44.8 760 @ 2.80GHz Заключение Разработанная распределенная вычислительная сеть MarGrid удовлетворяет всем предъявляемым требованиям: масштабируемость, поддержание логической целостности данных, устойчивость, WCF обеспечивает безопасность, эффективность. Полученное ре- шение способствует увеличению производительности ресурсоемких вычислений в при- оритетных направлениях Республики Марий Эл, которые включают: молекулярно- генетические исследования, биотехнологии, компьютерное моделирование, развитие ин- фокоммуникационной инфраструктуры научных исследований и информационную под- держку инновационной деятельности и др. Работа выполнена при финансовой поддержке гранта РФФИ № 15-07-99514. 122 Список литературы Леухин А.Н., Шувалов А.С., Потехин Е.Н., Безродный В.И., Парсаев Н.В. Модуль плани- ровщика задач распределенной вычислительной сети MarGrid v1.0.0 – № 2014616441; 24.06.14.— 2014. Leukhin A.N., Shuvalov A.S., Potehin E.N., Bezrodnyi V.I., Parsaev N.V. Modul planirovshchika zadach raspredelennoi vychislitelnoi seti MarGrid v1.0.0 – № 2014616441; 24.06.14. Леухин А.Н., Шувалов А.С., Потехин Е.Н., Безродный В.И., Парсаев Н.В. Модуль управ- ления высокопроизводительными вычислениями распределенной вычислительной сети MarGrid v1.0.0 – № 2014662158; 25.10.14.—2014. Leukhin A.N., Shuvalov A.S., Potehin E.N., Bezrodnyi V.I., Parsaev N.V. Modul upravleniya vysokoproizvoditelnymi vychileniyami raspredelennoi vychislitelnoi seti MarGrid v1.0.0 – № 2014616441; 24.06.14. Сайт распределенной вычислительной сети MarGrid [Электронный ресурс]: http://www.hpc.marsu.ru. – Дата обращения: 25.05.2016. Distributed computer system MarGrid website [Electronic resource]. (In Russ.) Available at: http://hpc.marsu.ru (accessed 25.05.2016) Distributed computing system MarGrid based on Republic of Mari El computers V.I. Bezrodnyi1, A.N.Leukhin1, N.V. Parsaev1, A.N. Ivanov1, H.R. Rahmanov2 1 Mari state university 2 Tashkent university of information technologies Email: a vova.bezrodny@gmail.com The article discusses the architecture and features of distributed computing system MarGrid to solve problems of high computational complexity. Keywords: distributed computing, cluster, client-server architecture. The work was supported by Russian foundation for basic research`s grant № 15-07-99514. © 2016 V.I. Bezrodnyi, A.N.Leukhin, N.V. Parsaev, A.N. Ivanov, H.R. Rahmanov 123