Суперкомпьютеры сегодня и завтра:
архитектура, проблемы, перспективы
                Андрей Слепухин
       Главный системный архитектор, «Т-Платформы»
               andrey.slepuhin@t-platforms.ru
История первая

СУПЕРКОМПЬЮТЕРЫ AT A GLANCE
Немного из прошлой жизни…
Тест Linpack и Top500
• Linpack: Ax=B
• Сложность: 2/3n3+2n2 операций
• Top500: публикуется 2 раза в год, начиная с
  2003
• 1997: 1Tflops, ASCI Red
• 2008: 1Pflops, IBM Roadrunner
• 2018: 1Eflops???
Сегодняшние чемпионы
• #1: LLNL Sequoia (IBM)
  –   20.1/16.3Pflops
  –   96 стоек
  –   98304 процессора
  –   7.9MW
• #2: K Computer (Fujitsu)
  –   11.3/10.5Pflops
  –   918 стоек
  –   88128 процессоров
  –   12.7MW
Top500 за 20 лет




         Современный ноутбук (~70Gflops)


         Современный смартфон (~1Gflops)
Из чего устроен суперкомпьютер?
• Вычислительные узлы
• Фабрика высокоскоростной сети
• Вспомогательные сети
  (управление/мониторинг)
• Система хранения данных
• Вспомогательные серверы (узлы
  доступа/компиляции/мониторинга и т.п.)
• Инфраструктура (системы бесперебойного
  электропитания и охлаждения)
Суперкомпьютинг vs. HighLoad
Суперкомпьютинг                             HighLoad

Научные и промышленные расчеты           Обработка информации

Количество операций с плавающей          Количество обработанных
             точкой                     транзакций, запросов и т.д.

                                       Много коротких задач/много
Длительная задача/один результат
                                               результатов

      Специализированные
                                             Ethernet и TCP/IP
высокоскоростные сети и протоколы

                                    Отказоустойчивость на программном
Требует высоконадежного «железа»
                                                  уровне
Суперкомпьютерные архитектуры
Векторная

• Cray Y-MP, Cray C90/T90, NEC SX-*

С общей памятью

• SGI Altix, SGI UltraViolet

Кластерная

• В основном на базе архитектуры x86

Массивно-параллельная

• Intel Paragon, ASCI Red, IBM BlueGene, Cray XE6

Гибридная

• Сочетает одну из упомянутых архитектур с ускорителями

Специализированная

• QPACE, MD-GRAPE, ANTON
Процессоры в суперкомпьютерах
Производи- Модель      Количество   Количество Тактовая Производи- Энергопо- Пиковая      Технологи-
тель       (серия)     ядер/потоков flops/такт частота, тельность, требление, пропускная ческий
                                               GHz      Gflops     W          способность процесс
                                                                              памяти,
                                                                              GB/sec

Intel      Xeon E5-        8/16         8       2.0-2.9   128-185.6     95-135    51.2       22nm
           26xx

AMD        Opteron        16/16         4       2.1-2.4   134.4-153.6    115      51.2       32nm
           63xx

IBM        A2 (BG/Q)     16+2/64        8         1.6       204.8        55       42.4       45nm

IBM        POWER7+         8/32         8         ~5         ~320         ??      100        32nm

Fujitsu    SPARC64        16/32         8        1.85       236.6        115      102        32nm
           IXfx

Fujitsu    SPARC64 X      16/32         8         ~3         382          ??      102        28nm

Jiāngnán   ShenWei        16/16         4         1.8       140.8         ??       68        65nm
Lab.       SW1600
Ускорители
•   GPGPU
•   MIC
•   Custom ASIC
•   FPGA

•   Характеристики (GPGPU/MIC)
     – Пиковая производительность >1 Tflops (DP)
     – Энергопотребление – 225-300W
     – Средства разработки: CUDA (Nvidia), OpenCL, OpenACC, compiler offload extensions (Intel)
•   Pros:
     – Высокая производительность/ватт
•   Cons:
     – Подходят не для всех задач
     – Проблемы с адаптированием приложений
     – Ограниченный объем локальной памяти
Интерконнект
• Max Bandwidth: до 14Gbps/lane (FDR
  InfiniBand)
• Min Latency: 300ns (BG/Q), 700ns (InfiniBand)
• Max Message rate: >108 сообщений в
  секунду (BlueGene/Q, Cray Aries)
• RDMA
• Lossless transmission
Интерконнект
• Аппаратная поддержка групповых и атомарных операций
   –   Broadcast
   –   Reduce
   –   Барьерная синхронизация
   –   Read-Modify-Write
   –   Поддержана полностью или частично в большинстве
       проприетарных интерконнектов, отсутствует в InfiniBand
• Проблемы
   –   Надежность: отказ линка/маршрутизатора, деградация линка
   –   Утилизация системных ресурсов при большом размере системы
   –   Deadlock-free маршрутизация
   –   Переупорядочивание пакетов при адаптивной маршрутизации
   –   Энергопотребление
Топологии интерконнекта
• Fat Tree (Clos Network)
   – Основная топология для InfiniBand
   – Pros:
      • Маленький диаметр сети
      • Высокая теоретическая бисекционная пропускная способность
      • Deadlock-free маршрутизация
   – Cons:
      • Большое количество маршрутизаторов
      • Реальная пропускная способность падает при большом размере
        сети из-за коллизий
      • Ограниченные возможности адаптивной маршрутизации
      • Нерегулярность: требует наличия выделенных корневых
        маршрутизаторов
Топологии интерконнекта
• N-мерный тор/решетка
  – Pros:
     • Очень эффективная топология для определенных классов задач
     • Маршрутизатор легко интегрируется в процессор (мало портов)
     • Простая и регулярная кабельная инфраструктура
  – Cons:
     • Большой диаметр сети
     • Низкая бисекционная пропускная способность
  – Для устранения недостатков можно увеличивать количество
    измерений:
     • K Computer (2011) – 6D тор
     • BlueGene/Q – 5D тор
  – Может масштабироваться до 100000 узлов и более
    (BlueGene/Q)
Топологии интерконнекта
• N-мерный гиперкуб
  – Граничный случай N-мерной решетки с длиной стороны 2
  – Pros:
     • Меньший диаметр по сравнению с тором
     • Бóльшая пропускная способность
  – Cons:
     • Для построения больших систем требуется значительное число
       портов в маршрутизаторе
Топологии интерконнекта
• Dragonfly
   – Наиболее перспективная топология для exascale-систем
   – Существующие реализации:
      • IBM PERCS
      • Cray Aries (2013)
   – Pros:
      •   Маленький диаметр сети
      •   Очень высокая бисекционная пропускная способность
      •   Наиболее эффективная топология при обмене all-to-all
      •   Хорошо подходит для решения нерегулярных задач
   – Cons:
      • Требует наличия адаптивной маршрутизации для эффективной
        работы
      • Сложная прокладка кабельных коммуникаций
Применяемые интерконнекты
Infiniband                        Cray Gemini

• 56Gbps                          • 64Gbps
• Fat Tree, 3D-torus, hypercube   • 3D тор

IBM BlueGene/Q                    Cray Aries (2013)

• 20Gbps                          • 30-40Gbps
• 5D тор                          • Dragonfly

IBM PERCS                         Extoll (2013)

• 60-100Gbps                      • 120Gbps
• Dragonfly                       • 3D тор

Tofu (K Computer)                 SGI NUMAlink 6

• 40Gbps                          • >50Gbps
• 6D тор                          • Кэш-когерентная память
Энергоэффективность
• Энергопотребление современных суперкомпьютеров исчисляется
  мегаваттами
• 1MW ≈ $1M в год
• PUE: отношение общей потребляемой мощности к полезной
   – Для лучших реализаций традиционного воздушного охлаждения PUE ≈ 1.5
   – Цель – достижение PUE на уровне 1.05-1.08
• Методы обеспечения высокого PUE
   – Увеличение эффективности системы электропитания на всех уровнях
   – Повышение рабочей температуры компонентов системы
       • Осторожно! Увеличение рабочей температуры ведет к увеличению токов утечки, а
         следовательно и энергопотребления
   – Охлаждение внешним воздухом
       • Дополнительные затраты на воздухоподготовку: фильтрация, увлажнение и т.д.
   – Охлаждение теплой (горячей) водой
       • Позволяет обеспечить более низкую температуру компонентов по сравнению с
         воздухом той же температуры
       • Требует принятия дополнительных мер по обеспечению защиты от протечек
Операционные системы
• Более 90% систем в Top500 используют Linux
• Проблемы
   – OS jitter из-за большого количества внутриядерных
     процессов и прерываний
   – Механизмы управления памятью не ориентированы на
     выполнение высокопроизводительных приложений
• Проекты по доработке Linux применительно к HPC
   – CNL (Compute Node Linux): low-jitter Linux от Cray
   – ZeptoOS: Linux для BlueGene с улучшенными механизмами
     управления памятью
   – Kitten: легковесное ядро, обеспечивающее совместимость
     со стандартными Linux-приложениями
   – Ядро CNK для BlueGene/Q частично совместимо со
     стандартными системными вызовами Linux
Файловые системы
• Практически повсеместно применяются параллельные файловые
  системы с объектной архитектурой
• Lustre
   – Open Source
   – Используется в большинстве систем из Top500
   – Разработка в настоящее время контролируется Intel
• IBM GPFS
• Panasas PanFS
   – Законченное аппаратно-программное решение
   – Отказоустойчивость обеспечивается с помочью software RAID на уровне
     файлов
• Особенности обработки данных в HPC
   – Большие файлы, требующие параллельной обработки
   – Структурированные научные данные (HDF5, другие форматы)
   – Поддержка серий данных, параметрические выборки
Файловые системы
• Перспективы развития
   – Lustre в течение ближайших лет останется наиболее
     распространенной файловой системой
   – Проект Colibri (Xyratex, Peter Braam – один из авторов Lustre) – нет
     детальной информации, проект строго засекречен
   – Потенциальное использование решений из BigData (distributed
     key-value storage, etc.)
   – PCIe flash, появление новых видов постоянной памяти могут
     привести к радикальному изменению архитектуры хранения
     данных (random access, иерархическая структура, локальность
     данных)
   – Специализированные файловые системы для контрольных точек
   – Exascale I/O Workgroup (EIOW) – рабочая группа, занимающаяся
     исследованиями направлений развития СХД и файловых систем
     для Exascale
       • http://www.eiow.org
Средства параллельного
              программирования
• MPI (Message Passing Interface)
   – Более 90% параллельных приложений написаны с
     использованием MPI
   – Останется основным инструментом для разработки в ближайшие
     5 лет
   – MPI 3.0 (принят 21 сентября 2012)
        • Расширенная поддержка коллективных операций, включая
          неблокируемые
        • Расширенная поддержка односторонних коммуникаций
        • Поддержка механизмов отказоустойчивости
        • Поддержка Fortran 2008
• PGAS (Partitioned Global Address Space)
   –   Перспективная технология параллельного программирования
   –   GASnet – экспериментальная реализация
   –   UPC, CAF – языки программирования с поддержкой PGAS
   –   Широкое применение возможно не ранее, чем через 2-3 года
Средства параллельного
             программирования
• OpenMP
   – Основной стандарт параллельного программирования для систем
     с общей памятью
   – Активное развитие библиотек и методов многопоточного
     программирования для многоядерных процессоров может
     привести к постепенному отходу от использования этого стандарта
• Программные средства для GPU и акселераторов
   – CUDA, OpenCL, OpenACC, OpenHMPP
История вторая

EXASCALE CHALLENGE:
ПРОБЛЕМЫ СУПЕРКОМПЬЮТИНГА
Exascale Challenge
                         2012 (BG/Q)     2018-2020        Относительно
                                         (Exascale)           2012
System peak               20 Pflops        1 Eflops          O(102)
Power                      8.6 MW         ~20 MW
System memory              1.6 PB         32-64 PB           O(10)
Node performance         205 Gflops    1.2 or 15 Tflops   O(10)-O(102)
Node memory BW            42.6 GB/s       2-4 TB/s           O(103)
Node concurrency         64 threads    O(103) or O(104)   O(102)-O(103)
Node interconnect BW       20 GB/s      200-400 GB/s         O(10)
System size (nodes)        98304       O(105) or O(106)   O(10)-O(102)
Total concurrency          5.97 M          O(109)            O(103)
MTTI                       4 days         O(<1 day)          -O(10)
Энергетический барьер
• Переход на новые технологические процессы – обратная сторона
  медали:
   – Напряжение не масштабируется
   – Токи утечки растут
• Энергопотребление суперкомпьютеров за 20 лет выросло в 16 раз
   –   1993: 500KW (Fujitsu Numerical Wind Tunnel)
   –   1997: 850KW (ASCI Red)
   –   2002: 3.2MW (NEC Earth Simulator)
   –   2007: 2.3MW (BlueGene/L)
   –   2012: 8MW (LLNL Sequoia)
• Энергопотребление ограничено
   – Инфраструктурными возможностями
   – Размером системы/плотностью мощности в стойке
• Цель для exascale: 20MW
Memory Wall
• Аппаратная задержка доступа к памяти DRAM составляет ~10ns и
  останется неизменной
• Пропускная способность на канал памяти DDRx (64-бит)
   –   2003: 3.2GB/sec
   –   2007: 6.4GB/sec
   –   2012: 12.8GB/sec
   –   2015: ~20GB/sec
   –   2017: ~25-30GB/sec
• Пропускная способность памяти GDDR5 для ускорителей:
   – Сегодня: 200-320GB/sec
   – Конец жизненного цикла памяти GDDR – через 2-3 года
• Для Exascale необходима пропускная способность памяти 2-4TB/sec на
  узел
• Необходимо уменьшить энергопотребление и увеличить надежность
I like to move it, move it
• Вычисления «холодные», перемещение данных
  «горячее»
                           2011           2020
DP FMADD flop             100 pJ          10 pJ
DP DRAM read              4800 pJ        1920 pJ
Local Interconnect        7500 pJ        2500 pJ
Cross System              9000 pJ        3500 pJ

• В exascale-системе интерконнект может составить
  до 50% общего энергопотребления системы
Надежность и отказоустойчивость
• Большинство существующих алгоритмов для HPC-приложений не
  обеспечивают отказоустойчивость
• Среднее время наработки на отказ в системе LLNL Sequoia (#1 в
  Top500) составляет примерно 4 дня
    – Дизайн BlueGene/Q специально разрабатывался с целью обеспечить
      максимальную надежность работы системы
• Среднее время наработки на отказ Cray Jaguar (#6 в Top500) – 35 часов
• Основная причина отказов – сбои оперативной памяти и
  интерконнекта
    – ECC является недостаточным механизмом для обеспечения устойчивой
      работы системы
    – Для интерконнекта необходимо иметь BER не хуже 10-17
• Основным методом обеспечения отказоустойчивой работы является
  создание контрольных точек
    – С ростом количества процессоров система хранения становится
      «бутылочным горлышком»
Co-design
История третья

БУДУЩЕЕ СУПЕРКОМПЬЮТИНГА
Перспективы развития технологий
• 2015-2016:
  – Интеграция интерконнекта в процессор
  – Интеграция процессора и памяти в одном корпусе
    (system-in-a-package)
  – Общая память для гибридных процессоров
• 2017-2018
  – Оптические коммуникации на уровне платы
  – Non-volatile Memory
  – 3D-stacking процессора и памяти
• 2019-2020
  – Silicon Photonics
Альтернативные процессорные
            архитектуры
• Мобильные процессоры
   – ARM
      • Октябрь 2011 – анонсирована 64-разрядная архитектура ARMv8
            – Поддержка большого набора векторных операций и release-consistency memory
              model
      •   2013 – первые чипы на базе новой архитектуры
      •   Середина 2013 – 64-разрядное ядро от ARM
      •   2015 – до 32 ядер, интеграция с GPU
      •   Развитая экосистема (ОС, средства разработки)
      •   Низкое энергопотребление
   – MIPS
      •   Используется различными (в основном китайскими) производителями
      •   64-разрядная архитектура давно существует
      •   Менее развитая экосистема
      •   Неопределенное будущее компании
Альтернативные процессорные
            архитектуры
• Проект Montblanc (суперкомпьютерный центр Барселоны)
   – Гибридная система на базе процессоров ARM и графических
     ускорителей
   – Текущая установка: ARM Cortex A9 + Nvidia GPU
   – В разработке: система на базе мобильного процессора Samsung
     Exynos 5450 (4 x Cortex A15 + Mali 658)
       • По сравнению с x86+GPU Примерно в 4 раза лучшая
         производительность/ватт, примерно в 10 раз лучшая
         цена/производительность
• Nvidia Denver
   – Интеграция 64-разрядных ядер на базе архитектуры ARM и GPU
   – Доступность – 2014-2015
   – Базовая разработка для экзафлопной архитектуры Echelon (~2017)
Альтернативные процессорные
           архитектуры
• Многоядерные процессоры
  – Tilera TILE-Gx
     • 36 ядер
     • 28W при 1.2GHz
  – Cavium Octeon
     • 32 ядра при 1.5GHz (65nm)
     • 48 ядер при 2.5GHz (28nm)
     • Проект Thunder: 64 ядра ARMv8
  – Adapteva Epiphany
     • 64 ядра при 0.8GHz (28nm)
     • 50Gflops/W (SP)
Технологии памяти
• Hybrid Memory Cube (HMC)
   – 3D интеграция нескольких кристаллов памяти и логического
     контроллера с помощью технологии TSV
   – Высокоскоростной последовательный интерфейс
      • На сегодняшний день: 64GB/sec в каждом направлении на чип
        (демонстратор технологий, 2011)
      • 2014: до 120GB/sec в каждом направлении на чип
      • 2015: поддержка ultra-short протокола для интегрированной памяти
        (значительное уменьшение энергопотребления)
   – Встроенная избыточность для обеспечения высокой надежности
   – Открытая спецификация:
      • Gen2: конец 2012
      • Gen3: 2013, поддержка атомарных операций
• Wide I/O memory
   – Очень низкое энергопотребление
   – Ориентирована на 3D стекирование
Non-volatile Memory
• Необходимость:                                            Registers,
                                                              O(KB)
   – Увеличение требований к объему памяти с                 1 cycle
     ростом количества ядер                                  Cache,
   – Высокое энергопотребление памяти DRAM                   O(MB)
                                                            10 cycles
   – Необходимость значительного сокращения
     времени создания контрольных точек =>                Memory, O(GB)
                                                            100 cycles
     наличие постоянной памяти на
     вычислительном узле
                                                          Latency Gap
• Технологии
   – Сегодня: NAND flash
                                                            Disk, O(TB)
   – ~2015 -2016: PCM (Phase-Change Memory), на            10000 cycles
     текущий момент начато производство первых
     серийных микросхем
   – ~2018-2020: STT-MRAM
       • По характеристикам может в некоторых случаях
         заменить DRAM при условии выполнения прогнозов
   – После 2020: новые перспективные технологии
     (например, Redox Memory)
Оптические технологии
• Рост скорости передачи данных
   – 10Gbps=>14Gbps=>25Gbps=>40Gbps=>…
   – При скорости 10Gbps максимальная длина сигнальных линий на
     плате из стандартного материала FR4 составляет ~30см
      • Для стандартных материалов 10Gbps является практическим пределом
      • Более эффективные материалы (например, Megtron 6) поддерживают
        большие скорости при примерно в 5 раз большей цене
   – Для медных кабелей: 10Gbps=>7м, 14Gbps=>4м, 25Gbps=>~2м
• Энергоэффективность
   – Оптические технологии передачи данных примерно в 5 раз более
     энергоэффективны, это соотношение растет с увеличением
     скорости
• Плотность
   – Оптические разъемы обеспечивают в 10-100 раз большую
     плотность по сравнению с электрическими
Оптические технологии
• Перспективы развития оптических технологий
  (оценки по появлению рыночных продуктов)
  – Интеграция оптических трансиверов в одном модуле с
    логическими устройствами (опытные образцы есть уже
    сейчас): 2015-2016
  – Интеграция оптических волноводов на печатную плату:
    2017-2018
  – Кремниевая фотоника, оптические коммуникации
    внутри микросхемы: после 2018
Новые классы задач
• Big data is coming!
   – Graph500: новый бенчмарк для data-oriented приложений
   – Аналитика, data mining
• Мультидисциплинарные задачи
   – Например: СFD+mechanics+chemistry

• Нерегулярные шаблоны коммуникаций
• Локальность данных жизненно необходима
• Статический параллелизм + синхронизация => динамический
  параллелизм
   – Транзакционная память
   – Новые средства многопоточного программирования (SMPSs, ETI
     SWARM, etc.)
   – Активные сообщения
Вместо заключения
• До середины 1990-х суперкомпьютеры были полностью
  уникальными системами
• Развитие микропроцессоров и других электронных
  компонентов привело к значительной коммодитизации
  суперкомпьютерных архитектур
• Следует ожидать, что дальнейшее развитие
  суперкомпьютерной отрасли будет еще более тесно связано с
  развитием технологий для широкого рынка
• Увеличение из года в год стоимости разработки отдельных
  электронных компонентов означает, что суперкомпьютерные
  технологии будут все более активно внедряться в других
  сегментах (BigData, Cloud Computing, Web, etc.)
• Значительная часть проблем суперкомпьютинга лежит в
  области алгоритмического и программного обеспечения
Немного помечтаем…
•   Exascale-компьютер – какой он?... (мнение автора)

•   256 стоек
•   100-200KW на стойку
•   Вариант A
     – 512K узлов/процессоров
          •   Однородная архитектура, легкие ядра
          •   32 ядра @2GHz, 16 flops/cycle
     – 5D/6D тор, ~150-200Gbps/link
•   Вариант B
     – 64K узлов/256К процессоров
          •   Гибридная архитектура на базе мобильных технологий
          •   4 Tflops/CPU
     – Dragonfly, 48-64 port high-radix router, ~10TB/sec switching capacity
•   Вариант C
     – 32K узлов/128К процессоров
          •   Гибридная архитектура на базе «тяжелых» процессоров и GPU
          •   8 Tflops/CPU
     – Dragonfly, 48-64 port high-radix router, ~10TB/sec switching capacity
Вопросы?

Суперкомпьютеры сегодня и завтра архитектура, проблемы, перспективы (Андрей Слепухин)

  • 1.
    Суперкомпьютеры сегодня изавтра: архитектура, проблемы, перспективы Андрей Слепухин Главный системный архитектор, «Т-Платформы» andrey.slepuhin@t-platforms.ru
  • 2.
  • 3.
  • 4.
    Тест Linpack иTop500 • Linpack: Ax=B • Сложность: 2/3n3+2n2 операций • Top500: публикуется 2 раза в год, начиная с 2003 • 1997: 1Tflops, ASCI Red • 2008: 1Pflops, IBM Roadrunner • 2018: 1Eflops???
  • 5.
    Сегодняшние чемпионы • #1:LLNL Sequoia (IBM) – 20.1/16.3Pflops – 96 стоек – 98304 процессора – 7.9MW • #2: K Computer (Fujitsu) – 11.3/10.5Pflops – 918 стоек – 88128 процессоров – 12.7MW
  • 6.
    Top500 за 20лет Современный ноутбук (~70Gflops) Современный смартфон (~1Gflops)
  • 7.
    Из чего устроенсуперкомпьютер? • Вычислительные узлы • Фабрика высокоскоростной сети • Вспомогательные сети (управление/мониторинг) • Система хранения данных • Вспомогательные серверы (узлы доступа/компиляции/мониторинга и т.п.) • Инфраструктура (системы бесперебойного электропитания и охлаждения)
  • 8.
    Суперкомпьютинг vs. HighLoad Суперкомпьютинг HighLoad Научные и промышленные расчеты Обработка информации Количество операций с плавающей Количество обработанных точкой транзакций, запросов и т.д. Много коротких задач/много Длительная задача/один результат результатов Специализированные Ethernet и TCP/IP высокоскоростные сети и протоколы Отказоустойчивость на программном Требует высоконадежного «железа» уровне
  • 9.
    Суперкомпьютерные архитектуры Векторная • CrayY-MP, Cray C90/T90, NEC SX-* С общей памятью • SGI Altix, SGI UltraViolet Кластерная • В основном на базе архитектуры x86 Массивно-параллельная • Intel Paragon, ASCI Red, IBM BlueGene, Cray XE6 Гибридная • Сочетает одну из упомянутых архитектур с ускорителями Специализированная • QPACE, MD-GRAPE, ANTON
  • 10.
    Процессоры в суперкомпьютерах Производи-Модель Количество Количество Тактовая Производи- Энергопо- Пиковая Технологи- тель (серия) ядер/потоков flops/такт частота, тельность, требление, пропускная ческий GHz Gflops W способность процесс памяти, GB/sec Intel Xeon E5- 8/16 8 2.0-2.9 128-185.6 95-135 51.2 22nm 26xx AMD Opteron 16/16 4 2.1-2.4 134.4-153.6 115 51.2 32nm 63xx IBM A2 (BG/Q) 16+2/64 8 1.6 204.8 55 42.4 45nm IBM POWER7+ 8/32 8 ~5 ~320 ?? 100 32nm Fujitsu SPARC64 16/32 8 1.85 236.6 115 102 32nm IXfx Fujitsu SPARC64 X 16/32 8 ~3 382 ?? 102 28nm Jiāngnán ShenWei 16/16 4 1.8 140.8 ?? 68 65nm Lab. SW1600
  • 11.
    Ускорители • GPGPU • MIC • Custom ASIC • FPGA • Характеристики (GPGPU/MIC) – Пиковая производительность >1 Tflops (DP) – Энергопотребление – 225-300W – Средства разработки: CUDA (Nvidia), OpenCL, OpenACC, compiler offload extensions (Intel) • Pros: – Высокая производительность/ватт • Cons: – Подходят не для всех задач – Проблемы с адаптированием приложений – Ограниченный объем локальной памяти
  • 12.
    Интерконнект • Max Bandwidth:до 14Gbps/lane (FDR InfiniBand) • Min Latency: 300ns (BG/Q), 700ns (InfiniBand) • Max Message rate: >108 сообщений в секунду (BlueGene/Q, Cray Aries) • RDMA • Lossless transmission
  • 13.
    Интерконнект • Аппаратная поддержкагрупповых и атомарных операций – Broadcast – Reduce – Барьерная синхронизация – Read-Modify-Write – Поддержана полностью или частично в большинстве проприетарных интерконнектов, отсутствует в InfiniBand • Проблемы – Надежность: отказ линка/маршрутизатора, деградация линка – Утилизация системных ресурсов при большом размере системы – Deadlock-free маршрутизация – Переупорядочивание пакетов при адаптивной маршрутизации – Энергопотребление
  • 14.
    Топологии интерконнекта • FatTree (Clos Network) – Основная топология для InfiniBand – Pros: • Маленький диаметр сети • Высокая теоретическая бисекционная пропускная способность • Deadlock-free маршрутизация – Cons: • Большое количество маршрутизаторов • Реальная пропускная способность падает при большом размере сети из-за коллизий • Ограниченные возможности адаптивной маршрутизации • Нерегулярность: требует наличия выделенных корневых маршрутизаторов
  • 15.
    Топологии интерконнекта • N-мерныйтор/решетка – Pros: • Очень эффективная топология для определенных классов задач • Маршрутизатор легко интегрируется в процессор (мало портов) • Простая и регулярная кабельная инфраструктура – Cons: • Большой диаметр сети • Низкая бисекционная пропускная способность – Для устранения недостатков можно увеличивать количество измерений: • K Computer (2011) – 6D тор • BlueGene/Q – 5D тор – Может масштабироваться до 100000 узлов и более (BlueGene/Q)
  • 16.
    Топологии интерконнекта • N-мерныйгиперкуб – Граничный случай N-мерной решетки с длиной стороны 2 – Pros: • Меньший диаметр по сравнению с тором • Бóльшая пропускная способность – Cons: • Для построения больших систем требуется значительное число портов в маршрутизаторе
  • 17.
    Топологии интерконнекта • Dragonfly – Наиболее перспективная топология для exascale-систем – Существующие реализации: • IBM PERCS • Cray Aries (2013) – Pros: • Маленький диаметр сети • Очень высокая бисекционная пропускная способность • Наиболее эффективная топология при обмене all-to-all • Хорошо подходит для решения нерегулярных задач – Cons: • Требует наличия адаптивной маршрутизации для эффективной работы • Сложная прокладка кабельных коммуникаций
  • 18.
    Применяемые интерконнекты Infiniband Cray Gemini • 56Gbps • 64Gbps • Fat Tree, 3D-torus, hypercube • 3D тор IBM BlueGene/Q Cray Aries (2013) • 20Gbps • 30-40Gbps • 5D тор • Dragonfly IBM PERCS Extoll (2013) • 60-100Gbps • 120Gbps • Dragonfly • 3D тор Tofu (K Computer) SGI NUMAlink 6 • 40Gbps • >50Gbps • 6D тор • Кэш-когерентная память
  • 19.
    Энергоэффективность • Энергопотребление современныхсуперкомпьютеров исчисляется мегаваттами • 1MW ≈ $1M в год • PUE: отношение общей потребляемой мощности к полезной – Для лучших реализаций традиционного воздушного охлаждения PUE ≈ 1.5 – Цель – достижение PUE на уровне 1.05-1.08 • Методы обеспечения высокого PUE – Увеличение эффективности системы электропитания на всех уровнях – Повышение рабочей температуры компонентов системы • Осторожно! Увеличение рабочей температуры ведет к увеличению токов утечки, а следовательно и энергопотребления – Охлаждение внешним воздухом • Дополнительные затраты на воздухоподготовку: фильтрация, увлажнение и т.д. – Охлаждение теплой (горячей) водой • Позволяет обеспечить более низкую температуру компонентов по сравнению с воздухом той же температуры • Требует принятия дополнительных мер по обеспечению защиты от протечек
  • 20.
    Операционные системы • Более90% систем в Top500 используют Linux • Проблемы – OS jitter из-за большого количества внутриядерных процессов и прерываний – Механизмы управления памятью не ориентированы на выполнение высокопроизводительных приложений • Проекты по доработке Linux применительно к HPC – CNL (Compute Node Linux): low-jitter Linux от Cray – ZeptoOS: Linux для BlueGene с улучшенными механизмами управления памятью – Kitten: легковесное ядро, обеспечивающее совместимость со стандартными Linux-приложениями – Ядро CNK для BlueGene/Q частично совместимо со стандартными системными вызовами Linux
  • 21.
    Файловые системы • Практическиповсеместно применяются параллельные файловые системы с объектной архитектурой • Lustre – Open Source – Используется в большинстве систем из Top500 – Разработка в настоящее время контролируется Intel • IBM GPFS • Panasas PanFS – Законченное аппаратно-программное решение – Отказоустойчивость обеспечивается с помочью software RAID на уровне файлов • Особенности обработки данных в HPC – Большие файлы, требующие параллельной обработки – Структурированные научные данные (HDF5, другие форматы) – Поддержка серий данных, параметрические выборки
  • 22.
    Файловые системы • Перспективыразвития – Lustre в течение ближайших лет останется наиболее распространенной файловой системой – Проект Colibri (Xyratex, Peter Braam – один из авторов Lustre) – нет детальной информации, проект строго засекречен – Потенциальное использование решений из BigData (distributed key-value storage, etc.) – PCIe flash, появление новых видов постоянной памяти могут привести к радикальному изменению архитектуры хранения данных (random access, иерархическая структура, локальность данных) – Специализированные файловые системы для контрольных точек – Exascale I/O Workgroup (EIOW) – рабочая группа, занимающаяся исследованиями направлений развития СХД и файловых систем для Exascale • http://www.eiow.org
  • 23.
    Средства параллельного программирования • MPI (Message Passing Interface) – Более 90% параллельных приложений написаны с использованием MPI – Останется основным инструментом для разработки в ближайшие 5 лет – MPI 3.0 (принят 21 сентября 2012) • Расширенная поддержка коллективных операций, включая неблокируемые • Расширенная поддержка односторонних коммуникаций • Поддержка механизмов отказоустойчивости • Поддержка Fortran 2008 • PGAS (Partitioned Global Address Space) – Перспективная технология параллельного программирования – GASnet – экспериментальная реализация – UPC, CAF – языки программирования с поддержкой PGAS – Широкое применение возможно не ранее, чем через 2-3 года
  • 24.
    Средства параллельного программирования • OpenMP – Основной стандарт параллельного программирования для систем с общей памятью – Активное развитие библиотек и методов многопоточного программирования для многоядерных процессоров может привести к постепенному отходу от использования этого стандарта • Программные средства для GPU и акселераторов – CUDA, OpenCL, OpenACC, OpenHMPP
  • 25.
  • 26.
    Exascale Challenge 2012 (BG/Q) 2018-2020 Относительно (Exascale) 2012 System peak 20 Pflops 1 Eflops O(102) Power 8.6 MW ~20 MW System memory 1.6 PB 32-64 PB O(10) Node performance 205 Gflops 1.2 or 15 Tflops O(10)-O(102) Node memory BW 42.6 GB/s 2-4 TB/s O(103) Node concurrency 64 threads O(103) or O(104) O(102)-O(103) Node interconnect BW 20 GB/s 200-400 GB/s O(10) System size (nodes) 98304 O(105) or O(106) O(10)-O(102) Total concurrency 5.97 M O(109) O(103) MTTI 4 days O(<1 day) -O(10)
  • 27.
    Энергетический барьер • Переходна новые технологические процессы – обратная сторона медали: – Напряжение не масштабируется – Токи утечки растут • Энергопотребление суперкомпьютеров за 20 лет выросло в 16 раз – 1993: 500KW (Fujitsu Numerical Wind Tunnel) – 1997: 850KW (ASCI Red) – 2002: 3.2MW (NEC Earth Simulator) – 2007: 2.3MW (BlueGene/L) – 2012: 8MW (LLNL Sequoia) • Энергопотребление ограничено – Инфраструктурными возможностями – Размером системы/плотностью мощности в стойке • Цель для exascale: 20MW
  • 28.
    Memory Wall • Аппаратнаязадержка доступа к памяти DRAM составляет ~10ns и останется неизменной • Пропускная способность на канал памяти DDRx (64-бит) – 2003: 3.2GB/sec – 2007: 6.4GB/sec – 2012: 12.8GB/sec – 2015: ~20GB/sec – 2017: ~25-30GB/sec • Пропускная способность памяти GDDR5 для ускорителей: – Сегодня: 200-320GB/sec – Конец жизненного цикла памяти GDDR – через 2-3 года • Для Exascale необходима пропускная способность памяти 2-4TB/sec на узел • Необходимо уменьшить энергопотребление и увеличить надежность
  • 29.
    I like tomove it, move it • Вычисления «холодные», перемещение данных «горячее» 2011 2020 DP FMADD flop 100 pJ 10 pJ DP DRAM read 4800 pJ 1920 pJ Local Interconnect 7500 pJ 2500 pJ Cross System 9000 pJ 3500 pJ • В exascale-системе интерконнект может составить до 50% общего энергопотребления системы
  • 30.
    Надежность и отказоустойчивость •Большинство существующих алгоритмов для HPC-приложений не обеспечивают отказоустойчивость • Среднее время наработки на отказ в системе LLNL Sequoia (#1 в Top500) составляет примерно 4 дня – Дизайн BlueGene/Q специально разрабатывался с целью обеспечить максимальную надежность работы системы • Среднее время наработки на отказ Cray Jaguar (#6 в Top500) – 35 часов • Основная причина отказов – сбои оперативной памяти и интерконнекта – ECC является недостаточным механизмом для обеспечения устойчивой работы системы – Для интерконнекта необходимо иметь BER не хуже 10-17 • Основным методом обеспечения отказоустойчивой работы является создание контрольных точек – С ростом количества процессоров система хранения становится «бутылочным горлышком»
  • 31.
  • 32.
  • 33.
    Перспективы развития технологий •2015-2016: – Интеграция интерконнекта в процессор – Интеграция процессора и памяти в одном корпусе (system-in-a-package) – Общая память для гибридных процессоров • 2017-2018 – Оптические коммуникации на уровне платы – Non-volatile Memory – 3D-stacking процессора и памяти • 2019-2020 – Silicon Photonics
  • 34.
    Альтернативные процессорные архитектуры • Мобильные процессоры – ARM • Октябрь 2011 – анонсирована 64-разрядная архитектура ARMv8 – Поддержка большого набора векторных операций и release-consistency memory model • 2013 – первые чипы на базе новой архитектуры • Середина 2013 – 64-разрядное ядро от ARM • 2015 – до 32 ядер, интеграция с GPU • Развитая экосистема (ОС, средства разработки) • Низкое энергопотребление – MIPS • Используется различными (в основном китайскими) производителями • 64-разрядная архитектура давно существует • Менее развитая экосистема • Неопределенное будущее компании
  • 35.
    Альтернативные процессорные архитектуры • Проект Montblanc (суперкомпьютерный центр Барселоны) – Гибридная система на базе процессоров ARM и графических ускорителей – Текущая установка: ARM Cortex A9 + Nvidia GPU – В разработке: система на базе мобильного процессора Samsung Exynos 5450 (4 x Cortex A15 + Mali 658) • По сравнению с x86+GPU Примерно в 4 раза лучшая производительность/ватт, примерно в 10 раз лучшая цена/производительность • Nvidia Denver – Интеграция 64-разрядных ядер на базе архитектуры ARM и GPU – Доступность – 2014-2015 – Базовая разработка для экзафлопной архитектуры Echelon (~2017)
  • 36.
    Альтернативные процессорные архитектуры • Многоядерные процессоры – Tilera TILE-Gx • 36 ядер • 28W при 1.2GHz – Cavium Octeon • 32 ядра при 1.5GHz (65nm) • 48 ядер при 2.5GHz (28nm) • Проект Thunder: 64 ядра ARMv8 – Adapteva Epiphany • 64 ядра при 0.8GHz (28nm) • 50Gflops/W (SP)
  • 37.
    Технологии памяти • HybridMemory Cube (HMC) – 3D интеграция нескольких кристаллов памяти и логического контроллера с помощью технологии TSV – Высокоскоростной последовательный интерфейс • На сегодняшний день: 64GB/sec в каждом направлении на чип (демонстратор технологий, 2011) • 2014: до 120GB/sec в каждом направлении на чип • 2015: поддержка ultra-short протокола для интегрированной памяти (значительное уменьшение энергопотребления) – Встроенная избыточность для обеспечения высокой надежности – Открытая спецификация: • Gen2: конец 2012 • Gen3: 2013, поддержка атомарных операций • Wide I/O memory – Очень низкое энергопотребление – Ориентирована на 3D стекирование
  • 38.
    Non-volatile Memory • Необходимость: Registers, O(KB) – Увеличение требований к объему памяти с 1 cycle ростом количества ядер Cache, – Высокое энергопотребление памяти DRAM O(MB) 10 cycles – Необходимость значительного сокращения времени создания контрольных точек => Memory, O(GB) 100 cycles наличие постоянной памяти на вычислительном узле Latency Gap • Технологии – Сегодня: NAND flash Disk, O(TB) – ~2015 -2016: PCM (Phase-Change Memory), на 10000 cycles текущий момент начато производство первых серийных микросхем – ~2018-2020: STT-MRAM • По характеристикам может в некоторых случаях заменить DRAM при условии выполнения прогнозов – После 2020: новые перспективные технологии (например, Redox Memory)
  • 39.
    Оптические технологии • Ростскорости передачи данных – 10Gbps=>14Gbps=>25Gbps=>40Gbps=>… – При скорости 10Gbps максимальная длина сигнальных линий на плате из стандартного материала FR4 составляет ~30см • Для стандартных материалов 10Gbps является практическим пределом • Более эффективные материалы (например, Megtron 6) поддерживают большие скорости при примерно в 5 раз большей цене – Для медных кабелей: 10Gbps=>7м, 14Gbps=>4м, 25Gbps=>~2м • Энергоэффективность – Оптические технологии передачи данных примерно в 5 раз более энергоэффективны, это соотношение растет с увеличением скорости • Плотность – Оптические разъемы обеспечивают в 10-100 раз большую плотность по сравнению с электрическими
  • 40.
    Оптические технологии • Перспективыразвития оптических технологий (оценки по появлению рыночных продуктов) – Интеграция оптических трансиверов в одном модуле с логическими устройствами (опытные образцы есть уже сейчас): 2015-2016 – Интеграция оптических волноводов на печатную плату: 2017-2018 – Кремниевая фотоника, оптические коммуникации внутри микросхемы: после 2018
  • 41.
    Новые классы задач •Big data is coming! – Graph500: новый бенчмарк для data-oriented приложений – Аналитика, data mining • Мультидисциплинарные задачи – Например: СFD+mechanics+chemistry • Нерегулярные шаблоны коммуникаций • Локальность данных жизненно необходима • Статический параллелизм + синхронизация => динамический параллелизм – Транзакционная память – Новые средства многопоточного программирования (SMPSs, ETI SWARM, etc.) – Активные сообщения
  • 42.
    Вместо заключения • Досередины 1990-х суперкомпьютеры были полностью уникальными системами • Развитие микропроцессоров и других электронных компонентов привело к значительной коммодитизации суперкомпьютерных архитектур • Следует ожидать, что дальнейшее развитие суперкомпьютерной отрасли будет еще более тесно связано с развитием технологий для широкого рынка • Увеличение из года в год стоимости разработки отдельных электронных компонентов означает, что суперкомпьютерные технологии будут все более активно внедряться в других сегментах (BigData, Cloud Computing, Web, etc.) • Значительная часть проблем суперкомпьютинга лежит в области алгоритмического и программного обеспечения
  • 43.
    Немного помечтаем… • Exascale-компьютер – какой он?... (мнение автора) • 256 стоек • 100-200KW на стойку • Вариант A – 512K узлов/процессоров • Однородная архитектура, легкие ядра • 32 ядра @2GHz, 16 flops/cycle – 5D/6D тор, ~150-200Gbps/link • Вариант B – 64K узлов/256К процессоров • Гибридная архитектура на базе мобильных технологий • 4 Tflops/CPU – Dragonfly, 48-64 port high-radix router, ~10TB/sec switching capacity • Вариант C – 32K узлов/128К процессоров • Гибридная архитектура на базе «тяжелых» процессоров и GPU • 8 Tflops/CPU – Dragonfly, 48-64 port high-radix router, ~10TB/sec switching capacity
  • 44.