Пространственно-распределенная мультикластерная вычислительная система: архитектура и программное обеспечение | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2011. № 1(14).

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

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

Geographically-distributedmulticluster computer system: architecture and software.pdf Современный этап развития вычислительной техники и телекоммуникацион-ных технологий характеризуется построением пространственно-распределенныхмультикластерных вычислительных систем (ВС) [1, 2]. В архитектурном планетакая ВС представляется как множество кластеров, взаимодействие между кото-рыми осуществляется через телекоммуникационную сеть (в общем случае - сетьИнтернет). Каждый кластер, в свою очередь, является пространственно-сосредо-точенной распределённой ВС, состоящей из множества вычислительных узлов,взаимодействующих через свою телекоммуникационную подсистему. Конфигу-рация вычислительного узла допускает варьирование в широких пределах - отоднопроцессорного до композиции из многоядерных процессоров и специализи-рованных ускорителей (например, GPGPU).Центром параллельных вычислительных технологий (ЦПВТ) Государственно-го образовательного учреждения высшего профессионального образования «Си-бирский государственный университет телекоммуникаций и информатики» (ГОУВПО «СибГУТИ») совместно с Лабораторией вычислительных систем учрежде-ния Российской академии наук Института физики полупроводников им. А.В.Ржанова Сибирского отделения РАН (ИФП СО РАН) создана и развивается про-странственно-распределенная мультикластерная вычислительная система [3].1. Архитектура пространственно-распределенной мультикластерной ВСДействующая конфигурация пространственно-распределённой мультикластер-ной ВС (GRID-модель) в свой состав включает более 120 процессорных ядер и име-ет пиковую производительность несколько TFLOPS. Система (рис. 1) объединяет 9пространственно-распределенных кластеров, причем кластеры A-G расположены вЦПВТ ГОУ ВПО «СибГУТИ» (центр г. Новосибирска), а кластеры H, I - в Лабора-тории вычислительных систем ИФП СО РАН (Академгородок, СО РАН).Рис. 1. Конфигурация пространственно-распределенноймультикластерной вычислительной системыКластеры A, B, C и H являются кластерами рабочих станций. Причем кластераA, B и C представляют собой компьютерные классы, располагающиеся в учебныхлабораториях кафедры вычислительных систем ГОУ ВПО «СибГУТИ», а H - со-вокупность персональных компьютеров лаборатории вычислительных системИФП СО РАН. Кластеры D, E, F, G и I работают в круглосуточном режиме.Каждый кластер укомплектован: вычислительными узлами, управляющим уз-лом, двумя телекоммуникационными системами (вычислительной и сервисной), атакже средствами бесперебойного электропитания. Кластер D (Xeon16) объединя-ет 4 вычислительных узла, на каждом из которых размещено по два двухъядерныхпроцессора Intel Xeon 5150 (Woodcrest) с тактовой частотой 2,66 GHz. Пиковаяпроизводительность кластера D - 166 GFLOPS. Кластер E (Xeon32) состоит из 4-хвычислительных узлов на базе двух процессоров Intel Quad Xeon E5345 с такто-вой частотой 2,33 GHz. Пиковая производительность кластера E - 298 GFLOPS.Кластер F (Xeon80) объединяет 10 вычислительных узлов с двумя процессорамиIntel Quad Xeon E5420 с тактовой частотой 2.5 GHz. Пиковая производительностькластера E - 800 GFLOPS. Кластер I - 5 вычислительных узлов с двумя процессо-рами AMD Opteron 248 - 252 (Sledgehammer) с тактовой частотой 2,2 - 2,6 GHz.Пиковая производительность кластера - 47 GFLOPS.В 2009 году ЦПВТ ГОУ ВПО «СибГУТИ» стал участником проекта «Универ-ситетский кластер», в рамках которого компанией Hewlett Packard предоставленкластер (G), укомплектованный 4 вычислительными узлами HP ProLiant BL220c,на которых размещено два четырехъядерных процессора Intel Xeon E5410 с так-товой частотой 2,33 GHz. Пиковая производительность кластера G - 298 GFLOPS.Любой из кластеров способен функционировать как автономно, так и в составепространственно-распределённой мультикластерной распределенной ВС. Теле-коммуникационные системы кластеров построены на базе технологий Gigabit иFast Ethernet. Для объединения кластеров используется сеть Internet (технологияVPN). Мультикластерная ВС допускает масштабирование путем организациивзаимодействия с множеством других кластеров.2. Программное обеспечениеПространственно-распределенная мультикластерная ВС укомплектована сис-темным программным обеспечением, включающим инструментарий параллельно-го мультипрограммирования (рис. 2). Инструментарий - это модели, методы ипрограммное обеспечение организации функционирования распределенных ВС,при решении множества задач, представленных параллельными программами.Подсистема параллельного мультипрограммированияСредства анализа параллельных программ: , , VampirTracmpistat otfstat eOpenMP: GNU GCC, Intel Compilers, Oracle CompilersPGAS: Unified Parallel CMPI: MPICH2, OpenMPI, TopoMPIСредства разработки параллельных программСредства организации распределенной очереди задач(Gbroker, dqueued, GridWay)Подсистема параллельного мультипрограммирования(TORQUE, MAUI, mpiexec)Подсистема самоконтроля, самодиагностики ВС и организацииотказоустойчивого выполнения параллельных программ(DMTCP - Distributed MultiThreaded CheckPointing)Операционная система GNU/Linux(SSH, Globus Toolkit, Ganglia)Удаленный доступ и мониторингРис. 2. Программное обеспечение пространственно-распределенноймультикластерной вычислительной системыСтандартные компоненты системного программного обеспечения представлены: сетевой операционной системой GNU/Linux (дистрибутив CentOS 5.5, версияядра 2.6.18); средствами разработки, отладки и анализа последовательных и параллельныхпрограмм:- компиляторы: Gcc, Sun, Intel;- математические библиотеки: GNU Scientific Library, AMD Core Math Library,Intel Math Kernel Library;- библиотеки передачи сообщений между ветвями параллельных программ:· распределенные приложения - MPI: MPICH2, OpenMPI, IntelMPI;· параллельные программы - OpenMP: gcc, sun, intel;- средствами отладки и анализа программ: gdb, vampire, gprof и т.д. программным обеспечением организации взаимодействия пространственно-распределенных кластерных ВС и диспетчеризации пользовательских заданий:Globus Toolkit, GridWay.Инструментарий параллельного мультипрограммирования включает: средства самоконтроля и самодиагностики; подсистему организации функционирования ВС в мультипрограммных ре-жимах, включающую средства вложения параллельных программ и реализацииэффективных групповых обменов между ветвями параллельных программ; средства организации распределенной очереди задач и диспетчер пользова-тельских запросов; подсистему анализа параллельных программ; средства мониторинга и организации удаленного доступа к ресурсам ВС.2 . 1 . В л о ж е н и е п а р а л л е л ь н ы х п р о г р а м мв и е р а р х и ч е с к и х с и с т е м а хКоммуникационные среды современных распределенных ВС используют не-однородные каналы связи между ресурсами. Более того, в (мульти)кластерных иGRID-системах коммуникационные среды имеют иерархическую организацию, вкоторых первым уровнем является сеть связи между кластерами, вторым - сетьсвязи внутри кластеров, третьим - среда доступа процессоров (или ядер) вычис-лительного узла к общей памяти. Скорости передачи информации на различныхуровнях таких коммуникационных сред существенно различны. По этой причиневремя выполнения параллельных программ на ВС в немалой степени зависит оттого, как они «вложены» в систему (на какие ядра назначены ветви и через какиеканалы связи они взаимодействуют).На основе метаэвристики имитации отжига (Simulated Annealing) созданы[4, 5] стохастические последовательный и параллельныйучетом передачи самой задачи в очередь и её данных в кластер) быстрее всегоначнет выполняться задача. Важно отметить, что при передаче задачи в очередьвыбранной подсистемы, для неё, аналогичным образом, периодически будет осу-ществляться поиск ресурсов. Это обеспечивает адаптацию диспетчеров под дина-мически изменяющуюся загрузку ресурсов пространственно-распределенных ВС.Предложенный алгоритм реализован в программном пакете GBroker [6]. Пакетимеет расширяемую архитектуру и допускает интеграцию с системами пакетнойобработки заданий. В пакет (рис. 3) входят диспетчер gbroker, клиентское прило-жение gclient и средство мониторинга производительности каналов связи netmonна уровне стека протоколов TCP/IP.Модуль gbroker устанавливается в каждом кластере и обеспечивает на интер-фейс с локальной системой пакетной обработки заданий (на данный момент −TORQUE). Модуль netmon устанавливается вместе с gbroker. Сервисы netmon со-бирают информацию о производительности каналов связи между кластерами.Модуль gclient обеспечивает интерфейс между пользователем и системой.Администратор настраивает локальные окрестности диспетчеров gbroker, ука-зывая, какие диспетчеры с какими могут обмениваться программами из своихочередей, и настраивает сервис netmon.Рис. 3. Функциональная структура пакета GBrokerПользователь формирует задание, состоящее из параллельной MPI-программы ипаспорта на языке ресурсных запросов JSDL, и отправляет его средствами gclientлюбому из диспетчеров gbroker. Диспетчер в соответствии с описанным выше алго-ритмом выбирает подсистему, на которой затем выполняется программа.На ресурсах пространственно-распределенной мультикластерной ВС проведеноисследование созданных алгоритмов и пакета GBroker. В качестве тестовых задачиспользовались MPI-программы из пакета NAS Parallel Benchmarks, а также про-граммы, реализующие параллельные версии различных численных методов. Моде-лирование показало, что среднее время обслуживания задач при децентрализован-ной диспетчеризации сопоставимо с централизованной диспетчеризацией. Вместе стем обеспечивается отказоустойчивость пространственно-распределенной мультик-ластерной ВС в случае выхода из строя отдельных кластеров. Время диспетчериза-ции достаточно мало по сравнению со временем выполнения программ.ЗаключениеСозданная пространственно-распределенная мультикластерная вычислитель-ная система используется как инструментальное средство для проведения иссле-дований и подготовки специалистов в области параллельных вычислительныхтехнологий. Перспективы использования созданного инструментария параллель-ного мультипрограммирования в промышленности подтверждаются растущимипотребностями в применении распределенных вычислительных и GRID-систем вобластях, где требуются высоконадежные (живучие) вычислительные средства,где решаются суперсложные задачи и моделируются современные технологиче-ские процессы и природные явления.

Ключевые слова

распределенные вычислительные системы, GRID, параллельное мультипрограммирование, эффективное выполнение параллельных программ, system software, geographically-distributed computer systems

Авторы

ФИООрганизацияДополнительноE-mail
Хорошевский Виктор ГавриловичСибирский государственный университет телекоммуникаций и информатики (г. Новосибирск)член-корреспондент Российской академии наук, профессор, доктор технических наук, заслуженный деятель науки Российской Федерации, заведующий лабораторией вычислительных систем Института физики полупроводников им. А.В. Ржанова СО РАН, директор Центра параллельных вычислительных технологий, заведующий кафедрой вычислительных системkhor@sibsutis.ru
Курносов Михаил ГеоргиевичСибирский государственный университет телекоммуникаций и информатики (г. Новосибирск)кандидат технических наук, доцент кафедры вычислительных систем, младший научный сотрудник лаборатории вычислительных систем Института физики полупроводников им. А.В. Ржанова СО РАН (г. Новосибирск)mkurnosov@gmail.com
Мамойленко Сергей НиколаевичСибирский государственный университет телекоммуникаций и информатики (г. Новосибирск)кандидат технических наук, доцент, заместитель заведующего кафедрой вычислительных системsergey@cpct.sibsutis.ru
Всего: 3

Ссылки

Курносов М.Г., Пазников А.А. Децентрализованное обслуживание потоков параллельных задач в пространственно-распределенных вычислительных системах // Вестник СибГУТИ. 2010. № 2 (10). С. 79−86.
Khoroshevsky V., Kurnosov M. Mapping parallel programs into hierarchical distributed computer systems // Proc. of 4th Intern. Conf. "Software and Data Technologies (ICSOFT 2009)". Sofia: INSTICC, 2009. V. 2. P. 123−128.
Курносов М.Г. Алгоритмы вложения параллельных программ в иерархические распределённые вычислительные системы // Вестник СибГУТИ. 2009. № 2 (6). С. 20−45.
Вычислительные ресурсы Центра параллельных вычислительных технологий ГОУ ВПО «СибГУТИ». URL: http://cpct.sibsutis.ru/index.php/Main/Resources (дата обращения: 25.11.2010).
Хорошевский В.Г. Мамойленко С.Н. Курносов М.Г. Архитектурные концепции, анализ и организация функционирования вычислительных систем с программируемой структурой // Информационные технологии и математическое моделирование систем: Труды Международной научной конференции. М.: РАН, 2008.
Хорошевский В.Г. Архитектура вычислительных систем. М.: МГТУ им. Н.Э. Баумана, 2008. 520 с.
 Пространственно-распределенная мультикластерная вычислительная система: архитектура и программное обеспечение | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2011. № 1(14).

Пространственно-распределенная мультикластерная вычислительная система: архитектура и программное обеспечение | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2011. № 1(14).

Полнотекстовая версия