кластеры и суперкомпьютеры

36
Основные классы современных параллельных суперкомпьютеров Параллельно- векторные системы (PVP). Симметричные мультипроцессорные системы (SMP) Массивно- параллельные системы (MPP) Системы с неоднородным доступом к памяти (NUMA) 1/79 1/79

description

кластеры и супер компьютеры

Transcript of кластеры и суперкомпьютеры

Page 1: кластеры и суперкомпьютеры

Основные классы современных параллельных суперкомпьютеров

Параллельно-векторные системы (PVP).

Симметричные мультипроцессорные системы (SMP)

Массивно-параллельные системы (MPP)

Системы с неоднородным доступом к памяти (NUMA)

1/791/79

Page 2: кластеры и суперкомпьютеры

Симметричные мультипроцессорные системы (SMP)

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

2/79

Page 3: кластеры и суперкомпьютеры

степень масштабируемости SMP систем ограничена в пределах технической реализуемости одинакового для всех процессоров доступа в память со скоростью, характерной для однопроцессорных компьютеров. Как правило, количество процессоров в SMP не превышает 32.

Достоинства и недостатки SMP3/79

повышение производительности приложений путем производительных аппаратных средств;

создание приложений в привычных программных средах;

одинаковое время доступа ко всей памяти;

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

+

Page 4: кластеры и суперкомпьютеры

Массивно-параллельные системы (MPP)

Система состоит из однородных вычислительных узлов, включающих: один или несколько центральных процессоров;локальную память (прямой доступ к памяти других узлов

невозможен);коммуникационный процессор или сетевой адаптер, жесткие диски

и/или другие устройства ввода/вывода.К системе могут быть добавлены специальные узлы ввода-вывода и управляющие узлы. Узлы связаны через некоторую коммуникационную среду.

4/79

Page 5: кластеры и суперкомпьютеры

отсутствие общей памяти снижает скорость межпроцессорного обмена.

Приращение производительности с ростом числа процессоров обычно вообще довольно быстро убывает (по закону Амдала).

5/79

масштабируемость: процессор имеет доступ только к своей локальной памяти, значит, не возникает необходимости в синхронизации. Практически все рекорды по производительности устанавливаются на машинах именно такой архитектуры, состоящих из нескольких тысяч процессоров (TOP 500).

Требуется специальная техника программирования для реализации обмена сообщениями между процессорами;

каждый процессор может использовать только ограниченный объем локального банка памяти;

требуются значительные усилия длямаксимального использования системных ресурсов. Этим определяется высокая цена ПО.

Мало задач, способных эффективно загрузить множество процессорных узлов.

Эффективность распараллеливания во многих случаях сильно зависит от деталей архитектуры МРР-системы, например топологии соединения процессорных узлов.

Проблема переносимости программ между различными системами.

+

Page 6: кластеры и суперкомпьютеры

Системы с неоднородным доступом к памяти (NUMA)

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

6/79

Page 7: кластеры и суперкомпьютеры

Основная проблема — обеспечение когерентности кэшей

NUMA-системы аналогичны SMP-системам. Их назначение - частично устранить главный недостаток SMP - низкую масштабируемость, что достигается за счет создания виртуальной общей памяти.

7/79

Повышение масштабируемости по сравнению с SMP-системами

Масштабируемость вырастает на порядок, за это приходится платить увеличением стоимости аппаратного и програмного обеспечения.

Аппаратура усложняется за счет появления единой коммуникационной среды, к качеству которой предъявляются высокие требования.

+

Page 8: кластеры и суперкомпьютеры

Параллельно-векторные системы (PVP)

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

Как правило, несколько таких процессоров (1-16) работают одновременно над общей памятью (аналогично SMP) в рамках многопроцессорных конфигураций. Несколько таких узлов могут быть объединены с помощью коммутатора (аналогично MPP).

8/79

Параллелизм обработки обеспечивается представлением данных в виде векторов значений. Одна и та же операция производится над вектором в целом. Некоторые авторы утверждают, что такие машины не являются параллельными, так как векторы обрабатываются последовательно (параллельность имеется только на уровне компонентов вектора) и относят их к классу непараллельных машин.

Page 9: кластеры и суперкомпьютеры

Если алгоритм представим в виде операций над векторами, то производительность PVP-системы будет очень высокой.

9/79

Нет необходимости в описании и реализации взаимодействий разных узлов.

Высокая стоимость.

Невозможность представления многих алгоритмов в форме операций над векторами.

+

Page 10: кластеры и суперкомпьютеры

Современные высокопроизводительные компьютеры10/79

Современный кластер = SMP + MPP + PVP

Page 11: кластеры и суперкомпьютеры

Пиковая производительность определяется как максимальное число операций над числами с плавающей запятой, которое компьютер может произвести в секунду (FLoating point OPerations per Second — FLOPS)

Пиковая производительность считается как FLOPS

peak=P*N*Hz*C

P — число процессоров;N — число вычислительных ядер на

процессор;Hz — тактовая частота процессора;C — максимальное число операций над

числами с плавающей запятой, которое процессор может выполнить за один такт.

11/79

Оценка производительности компьютера

Page 12: кластеры и суперкомпьютеры

Отличие реальной производительности от

пиковой

FLOPSpeak

≠ FLOPSreal

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

12/79

Page 13: кластеры и суперкомпьютеры

Недостатки FLOPS

FLOPS — плохая мера производительности: неоднозначным является само определение. «Операцией с плавающей

запятой» может быть как сложение/вычитание, так и более сложные умножение/деление;

существенную роль в вычислениях играет разрядность операндов, которая нигде не оговаривается;

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

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

13/79

Page 14: кластеры и суперкомпьютеры

14/79

Тест Whetstone — это синтетический тест оценки производительности компьютеров. Впервые реализован на языке Algol 60 в 1972 г. Национальной физической лаборатории Великобритании.

Whetstone benchmark использовался для оценки производительности арифметических операций над числами с плавающей запятой.Результат — число «тысяч Whetstone-инструкций в секунду» (kWIPS).

Whetstone

CPUЧастота

процессора, ГГц

Производительность

Год выпускаMWIPS MFLOPS

Core 2 Duo 2,057 508 4319 2006

Phenom II 2,145 443 5004 2009

Core i7 930 2,496 589 5146 2010

Core i7 860 2,790 667 5239 2010

Page 15: кластеры и суперкомпьютеры

Dhrystone

Dhrystone — это синтетический тест, разработанный в 1984 г. для оценки целочисленной производительности компьютеров.Название "Dhrystone" — это игра слов с другим тестом — Whetstone.

Результат — число «Dhrystones per second», числа итераций кода программы в секунду.

Основное назначение теста — оценка производительности при работе с целыми числами. Версия 2.0 теста была выпущена автором в марте 1988 г.

15/79

Page 16: кластеры и суперкомпьютеры

Whetstone и Dhrystone — результат анализа большого количества реальных программ, включая написанные на языках FORTRAN, PL/1, SAL, ALGOL 68 и Pascal. Результат анализа — среднее число отдельных операций (условных и математических операторов, вызовов процедур, разыменование указателей и т.п.) на 1000 команд.

Недостатки синтетических тестов:не учитывает необычный код, который обычно не встречается в

программах;неустойчив к оптимизациям компилятора: результат может оказаться

выше до 30%!зависит от версии компилятора;код тестов мал по размеру и помещается в кэш-памяти современных

процессоров — не учитываются задержки при работе с памятью.

Whetstone и Dhrystone — синтетические тесты, то есть программы, которые специально разработаны, чтобы имитировать работу программ какого-то класса (например, научных геофизических).

Синтетические тесты Whetstone и Dhrystone

16/79

Page 17: кластеры и суперкомпьютеры

LINPACK

Тест LINPACK измеряет производительность компьютера по выполнению операций над числами с плавающей запятой.

Тест измеряет насколько быстро компьютер решает систему линейных уравнений размерности N*N вида Ax = b. Решение ищется методом Гаусса и требует

2/3·N3 + 2·N2 операций над числами с плавающей запятой.

Для высокопроизводительных систем пакет High-Performance LINPACK Benchmark используется для ранжирования в списке TOP500 самых быстрых в мире компьютеров. HPC benchmark запускается несколько раз, чтобы найти размерность Nmax, при которой достигается наилучшая производительность

17/79

Page 18: кластеры и суперкомпьютеры

Несмотря на недостатки, показатель FLOPS используют для оценки производительности, основываясь на тесте LINPACK.

Причины популярности:FLOPS — это абсолютная величина;многие задачи инженерной и научной практики в конечном итоге

сводятся к решению систем линейных алгебраических уравнений;большинство современных суперкомпьютеров построены по

классической архитектуре с использованием стандартных процессоров, что позволяет использовать единую метрику производительности.

Jaguar: 1.76 PFLOPS=1760 TFLOPS

Суперкомпьютер «Ломоносов»: 350 TFLOPS

18/79

Page 19: кластеры и суперкомпьютеры

Суперкомпьютер МГУ «Ломоносов»

Page 20: кластеры и суперкомпьютеры

420 Тфлопс350 Тфлопс83%4 4468 892 35 776T-Blade2, T-Blade 1.1, PowerXCell 8iIntel Xeon 5570, 2.93 GHz56,5 ТБайтQDR Infiniband1,35 ПБайтClusrtx T-Platforms Edition252 м2

1.5 МВт

Пиковая производительностьРеальная производительность

ЭффективностьЧисло вычислительных узлов

Число процессоровЧисло процессорных ядер

Типы вычислительных узловОсновной процессорОперативная память

Коммуникационная сетьСистема хранения данных

Операционная системаЗанимаемая площадь

Энергопотребление вычислителя

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

20/79

Page 21: кластеры и суперкомпьютеры

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

21/79

Page 22: кластеры и суперкомпьютеры

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

22/79

Page 23: кластеры и суперкомпьютеры

Суперкомпьютер МГУ “Ломоносов”

23/79

Page 24: кластеры и суперкомпьютеры

24/79

Page 25: кластеры и суперкомпьютеры

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

Всего в системе 10т гликоля и 40т воды

25/79

Page 26: кластеры и суперкомпьютеры

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

26/79

Page 27: кластеры и суперкомпьютеры

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

Вес оборудования машзала – 57 т, СБЭ – 92т

27/79

Page 28: кластеры и суперкомпьютеры

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

Общая длина кабелей более 80 км

Суперкомпьютер МГУ Суперкомпьютер МГУ ““ЛомоносовЛомоносов””

Общая длина кабелей более 80 км

Общая длина кабелей более 80 км

28/79

Page 29: кластеры и суперкомпьютеры

Проблемы кластеров

Что мешает кластерам и дальше развиваться экспоненциальными темпами?

2010 2011 2012 2013 2014 2015 2016

29/79

Page 30: кластеры и суперкомпьютеры

Высокая стоимость

Стоимость только суперкомпьютера (без учета инфраструктуры) — более 200 млн. долларов

Jaguar

Только энергопотребление обходится в 70.000 долларов/сутки

Page 31: кластеры и суперкомпьютеры

Большое энергопотребление31/79

Энергопотребление: более 12 МВт

Петрозаводская ТЭЦ:установленная электрическая мощность 280 МВт

Page 32: кластеры и суперкомпьютеры

Необходимость охлаждения32/79

Более 70% занимаемых суперкомпьютером площадей — системы охлаждения

Около половины всей потребляемой суперкомпьютером электроэнергии уходит на системы охлаждения

Page 33: кластеры и суперкомпьютеры

Плохая масштабируемость33/79

Для увеличения в 2 раза производительности существующего суперкомпьютера недостаточно просто «в 2 раза увеличить доступную площадь и 2 раза увеличить количество доступной электроэнергии» — как правило, необходимо полностью начинать проектирование «с нуля»

Page 34: кластеры и суперкомпьютеры

Высокая вероятность отказа компонент34/79

Около 45.000 процессоров360 ТБ оперативной памяти6,6 ПБ дискового пространства

Если вероятность отказа процессора в год составит 0,008, то в среднем каждый день будет выходить из строя один процессор кластера

Page 35: кластеры и суперкомпьютеры

Сложность обслуживания35/79

Page 36: кластеры и суперкомпьютеры

Плохая управляемость36/79

Более 25 тысяч операционных систем

Десятки тысяч пользователей