Высокопроизводительные вычисления в сетях

Download Report

Transcript Высокопроизводительные вычисления в сетях

Соловьев Владимир Михайлович
Высокопроизводительные вычисления в университете
В
настоящее
время
вычислительные
средства Саратовского государственного
университета находятся в состоянии перехода от использования в образовании и
научных исследованиях обычных персональных компьютеров объединенных в
вычислительную
сеть
к
«недорогим»
суперкомпьютерным установкам – вычислительным кластерам, grid-системам и
cloud-системам. Вычислительные кластеры
существенно преобладают в сетях современных университетов, исходя из опыта
западных университетов, партнеров СГУ
(университет
штата
Колорадо,
США;
университет штата Теннесси, США (Окридж);
университет
г.
Киль,
Великобритания;
университет Брюнель, Великобритания и
другие). Они создаются на оборудовании
cLAN, Myrinet, ServerNet, SCI, HP, SuperMicro
и других производителей, давая возможность практически каждому университету
собрать у себя свой собственный вариант
суперкомпьютера
–
вычислительный
кластер.
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
2
Кластеры и суперкомпьютеры
Традиционно понятие «кластер» употреблялось как «кластерная» технология, используемая для повышения надежности серверов баз данных
или web-серверов. В настоящее время о вычислительных
кластерах стали говорить, как
альтернативе традиционным
вычислительным средствам –
суперкомпьютерам.
Университетский вычислительный кластер – это, как правило, совокупность компьютеров,
объединенных в рамках вычислительной сети для решения одной задачи. В качестве
вычислительных узлов можно использовать доступные на рынке однопроцессорные компьютеры,
двух- или четырехпроцессорные SMP-серверы. Каждый узел работает под управлением своей копии
операционной системы, в качестве которой чаще всего используются стандартные операционные
системы: Linux, Windows server 2008, HPC и т.д. Состав и мощность узлов может меняться в рамках
одного кластера, давая возможность создавать неоднородные системы. Выбор конкретной
коммуникационной среды определяется многими факторами: особенностями класса решаемых
задач, доступным финансированием, необходимостью масштабирования кластера и т.д. Обычно в
конфигурацию кластера включают специализированные серверы (файл-серверы, серверы
удаленного доступа на кластер через Internet и т.д.).
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
3
Вычислительные возможности кластера
В СГУ применяют несколько способов оптимально
задействовать вычислительные мощности университетских кластеров:
1. В небольших подразделениях университета (кафедрах,
лабораториях, центрах и т.д.) используются «малые»
кластерные системы с числом ядер до 50.
2. На факультетах, в институтах и т.д. используются
кластерные системы с числом ядер от 100 до 200.
3. В университете в целом используется кластерная
система с числом ядер до 400.
4. Для решения задач, требующих большей производительности
университет
участвует
в
программах
«Университетский кластер» и им подобным. Альтернатива
этому – использование cloud-систем.
5. До 50% загрузки кластеров в СГУ – это плановые
занятия по параллельному программированию, которые в
основном обеспечивают «малые» кластерные системы. В
этом случае можно рекомендовать также виртуализацию
(Sun VirtualBox поддерживает до 32 виртуальных ядер) и
grid-системы.
6. До 30% загрузки кластеров в СГУ – это выполнение
квалификационных работ дипломниками, магистрами,
аспирантами.
7. До 20% загрузки кластеров в СГУ – это плановые НИР и
ОКР.
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
4
Кластеры Саратовского государственного университета
Типовой университетский вычислительный кластер СГУ – это массив серверов (вычислительных узлов),
объединенных коммуникационной сетью и размещенных в отдельной стойке. Каждый вычислительный
узел имеет несколько многоядерных процессоров, свою оперативную память и работает под
управлением своей операционной системы. Наибольшее распространение в СГУ получили однородные
кластеры, то есть таких, где все узлы абсолютно одинаковы по своей архитектуре и
производительности. Примером такого однородного 80-ядерного кластера, входящего в Российскую
программу «Университетский кластер», является приведенная на слайде вычислительная система.
Стойка 42 U
10 серверов
HP ProLiant
DL160 G5
ProCurve
2810-24G
Smart-UPS RT
8000VA/6400W
Кластер установленный в РНЦ
«Курчатовский институт» и
изготовленный СГУ
13.04.2015
Кластер установленный в
Саратовском государственном
университете
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
5
Сеть Саратовского государственного университета
Один из первых «кластерных» проектов, давший развитие целому классу параллельных систем СГУ
– это вычислительный кластер, вошедший в дальнейшем в программу «Университетский кластер».
Он был реализован в рамках инновационной образовательной программы. Для работы в ним были
разработаны специальные средства, распределяющие трафик в вычислительной сети СГУ. Все узлы
этого кластера работают под управлением RedHat Linux и доступны с любого компьютера сети.
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
6
Первый кластерный проект СГУ
В первом кластере имелся выделенный сервер – головная машина (front-end). На этой машине был
установлен интерфейс пользователя и программное обеспечение, которое управляло запуском
программ на кластере. Собственно вычислительные процессы пользователей запускались на
вычислительных узлах, причем они распределялись так, что на каждое ядро процессора приходилось не
более одного вычислительного процесса.
Коммутатор HP
ProCurve Switch
6400cl-6XG
Supermicro Server
6015B-NTRV
Подключение к внешней вычислительной сети
Патч-корд
Supermicro Server
1000 Мб/с
6015B-NTRV
Supermicro Server
6015B-NTRV
Supermicro Server
6015B-NTRV
Supermicro Server
6015B-NTRV
Supermicro Server
6015B-NTRV
Патч-корд
10 Гб/с
Supermicro Server
6015B-NTRV
Университетский вычислительный кластер работал под
управлением
одной
из
разновидностей ОС Linux –
многопользовательской многозадачной
сетевой
операционной системы. Все узлы
кластера имели доступ к общей
файловой системе, находящейся на файл-сервере.
Supermicro Server
6015B-NTRV
Supermicro Server
6015B-NTRV
Supermicro Server
6015B-NTRV
Кабели электропитания серверов
Блок электрических розеток
Кабели электропитания серверов
А
В
С
Источник бесперебойного питания
APC Symmetra LX 16kVA <SYA16K16I>
13.04.2015
Подключение к
электрической
сети
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
7
Основы создания вычислительных кластеров
Закон Амдала
С увеличением количества ядер (процессоров) в
кластере
«n»
ускорение
определяться
параллелизмом задачи «a», а не параметрами
аппаратной части серверов (тактовой частотой
процессора) .
Качество телекоммуникационной сети
Закон Амдала не отражает потерь времени на межпроцессорный
обмен сообщениями. Эти потери зависят от качества
телекоммуникационной сети (коэффициента сетевой деградации
вычислений с). Поэтому телекоммуникационная сеть кластера
должна быть максимально доступной производительности (в
настоящее время это не хуже 10 Гб/с).
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
8
Ускорение в параллельной системе
Оптические магистрали
Саратовского государственного
университета
При «хорошей» телекоммуникационной сети кластера
на ускорение в параллельной системе может
оказывать
влияние
и
количеством
ядер
в
многопроцессорной системе (масштабирование).
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
9
Программное обеспечение кластера
Узлы
кластера работают под
управлением собственной независимой локальной копии операционной системы, в качестве
которой в университетах используется тот или иной дистрибутив
ОС Linux. С
учетом
этих
особенностей, для решения задачи
по
обеспечению
возможности
пользователей работать с кластером как с единой вычислительной
системой коллективного пользования в настоящее время предлагается использовать специализированные
системы
управления
кластерами. Такие системы работают
совместно
с
базовой,
установленной на узлы операционной системой и предлагают
средства по инсталляции кластера,
централизованного управления и
мониторинга кластером, по обеспечению управления потоком заданий
пользователей, выделению ресурсов кластера для их решения и т.д.
Нет специализированных операционных систем для кластеров.
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
10
Программное обеспечение кластера
Программное
обеспечение
университетских
кластеров
СГУ, чаще всего, реализуется
на базе свободно распространяемой ОС Linux (Fedora
release 10 x86_64 kernel
2.6.27.19-170.2.35.fc10.x86
_64). Сейчас пробуем Fedora
12. Для удобства работы
каталоги пользователей смонтированы по сети, для чего на
кластере настроена сетевая
файловая система NFS. В
качестве
основного
программного средства организации параллельных вычислений используются библиотеки
MPICH/MPI.
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
11
Программное обеспечение кластера
Кроме ОС на кластере СГУ установлен программный комплекс
OSCAR, включающий в себя следующие пакеты:
1.SIS (System Installation Suite) – инструмент для автоматизации
установки и конфигурирования ОС Linux на узлах кластера.
2.C3 (Cluster Command Control) – средства для удаленного
запуска команд, копирования файлов на все или группу узлов
кластера.
3.HDF5 (Hierarchical Data Format) – программный продукт,
включающий спецификацию форматов данных и поддержку
библиотек.
4.Mpich 1.2.7 - одна из реализаций MPI.
5.OPIUM (OSCAR Password Installer and User Management) –
средства для синхронизации учет-ных записей пользователей и
конфигурирования протокола ssh.
6.PBS Torque – система управления пакетной обработкой
кластера.
7.PVM (Parallel Virtual Machine) – пакет для поддержки
параллельных вычислений в гетерогенных кластерах.
8.Switcher – пакет, позволяющий при запуске заданий
устанавливать переменные среды исполнения.
9.Ganglia - пакет мониторинга кластера.
10.Job Monarch - программа-плагин к пакету Ganglia для
отслеживания информации по запущенным задачам (сбор
статистики).
11.MAUI - программа-планировщик заданий с набором политик
планирования, динамической приоритизацией и наличием
механизма предварительного резервирования.
12.Open MPI - программный продукт, объединяющий технологии
и ресурсы из других проектов (FT-MPI, LA-MPI, LAM/MPI, и PACXMPI) для создания улучшенной MPI- библиотеки.
13.LAM - пакет по созданию MPI библиотеки в гетерогенной
среде (предшественник OpenMPI).
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
12
Выводы
Таким образом, построение высокопроизводительного вычислительного кластера университета представляет
собой сложную комплексную задачу, включающую несколько этапов. Важным этапом является проектирование
кластера, где в качестве технических требований к университетскому кластеру рассматриваются характеристики
(производительность, эффективность, масштабируемость и т.д.). В этом случае, в соответствии с техническими
требуемыми
и
дополнительными
требованиями
(бюджетом
проекта),
производится
расчет,
и
выбираются
значения
параметров аппаратной части кластера: выбор параметров вычислительного узла
(разрядность, количество процессоров, объем памяти, объем кэша и т.д.), количество вычислительных узлов,
характеристики коммуникационного оборудования, выбираются управляющий узел и параметры сети. В общем
случае при проектировании кластера его характеристики обычно задаются для теста HPL (High Performance
Linpack). Для случаев, когда
кластер
проектируется
под
определенный
пакет
прикладных
программ, вместо теста HPL используются тесты, характеризующие соответствующий класс задач. После
определения
проектных
параметров
и
с
учетом
дополнительных
требований
принимаются
конструкционные решения о компоновке, системе энергоснабжения и охлаждения кластера.
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
13
Высокопроизводительные вычисления в сетях
Саратовского государственного университета
Спасибо за внимание
Докладчик – Владимир Михайлович Соловьев
Е-Mail: [email protected]
Телефон: (8452) 210 660
13.04.2015
Совещание по развитию и повышению эффективности сети RUNNet, Новгород
14