2016 Ответы на экзаменационные вопросы
Описание файла
Документ из архива "2016 Ответы на экзаменационные вопросы", который расположен в категории "". Всё это находится в предмете "суперкомпьютерное моделирование и технологии" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Онлайн просмотр документа "2016 Ответы на экзаменационные вопросы"
Текст из документа "2016 Ответы на экзаменационные вопросы"
Список вопросов к экзамену по курсу
«Суперкомпьютерное моделирование и технологии »,
магистры 2 года обучения, сентябрь – декабрь 2016 г.
-
Поколения архитектур компьютеров и парадигмы программирования.
Архитектурные особенности современных микропроцессоров.
-
Векторно-конвейерные компьютеры
-
Середина 70-х годов.
-
Особенности архитектуры: векторные функциональные устройства, зацепление функциональных устройств, векторные команды в системе команд, векторные регистры.
-
Программирование: векторизация самых внутренних циклов.
-
Пример: суперкомпьютер Cray 1.
-
Векторно-параллельные компьютеры
-
Начало 80-х годов.
-
Особенности архитектуры: векторные функциональные устройства, зацепление функциональных устройств, векторные команды в системе команд, векторные регистры.
Небольшое число процессоров объединяются над общей памятью.
-
Программирование: векторизация самых внутренних циклов и распараллеливание на внешнем уровне, единое адресное пространство, локальные и глобальные переменные.
-
Примеры: суперкомпьютеры Cray X-MP, Y-MP
-
Массивно-параллельные компьютеры
-
Начало 90-х годов.
-
Особенности архитектуры: тысячи процессоров объединяются с помощью коммуникационной сети по некоторой топологии, распределенная память.
-
Программирование: обмен сообщениями, отсутствие единого адресного пространства, PVM, Message Passing Interface.
Необходимость выделения массового параллелизма, явного распределения данных и согласования параллелизма с распределением.
-
Примеры: суперкомпьютеры Cray T3D, Intel Paragon XPS140
-
Параллельные компьютеры с общей памятью
-
Середина 90-х годов.
-
Особенности архитектуры: сотни процессоров объединяются над общей памятью.
-
Программирование: единое адресное пространство, локальные и глобальные переменные, Linda, OpenMP.
-
Примеры: суперкомпьютеры Dec AlphaServer, Sun StarFire
-
Кластеры из узлов с общей памятью
-
Начало 2000-х.
-
Особенности архитектуры: большое число многопроцессорных узлов объединяются вместе с помощью коммуникационной сети по некоторой топологии, распределенная память; в рамках каждого узла несколько (многоядерных) процессоров объединяются над общей памятью.
-
Программирование: неоднородная схема MPI+OpenMP;
необходимость выделения массового параллелизма, явное распределение данных, обмен сообщениями на внешнем уровне; распараллеливание в едином адресном пространстве, локальные и глобальные переменные на уровне узла с общей памятью.
-
Примеры: суперкомпьютеры Чебышев, «К»
-
Кластеры из узлов с общей памятью
-
Середина 2000-х.
-
Особенности архитектуры: большое число многопроцессорных узлов объединяются вместе с помощью коммуникационной сети по некоторой топологии, распределенная память; в рамках каждого узла несколько (многоядерных) процессоров объединяются над общей памятью; на каждом узле несколько ускорителей (GPU, Phi).
-
Программирование: MPI+OpenMP+OpenCL/CUDA;
-
Примеры: суперкомпьютеры Ломоносов, Tiahne-2
-
Технологии Интел для высокопроизводительных вычислений.
-
Стратегия развития процессоров архитектуры POWER.
Развитие стратегии аппаратных средств для HPC
-
Общий дизайн платформы для высокопроизводительных вычислений и высокопроизводительной аналитики
-
Углубление отношений с технологическими партнёрами
-
Серверы для данного сегмента в основном 2 сокета
-
Усиление поддержки InfiniBand и Ethernet
-
Большая часть производительности на операциях с плавающей точкой будет достигаться за счёт GPU
-
Стандартные индустриальные стойки и корпуса
-
Варианты воздушного и водяного охлаждения
-
Стратегия развития процессоров архитектуры POWER
-
Консолидация усилий и фокус на одном процессоре (чипе) общего назначения для каждого поколения
-
Дизайн для более плотной интеграции с вспомогательным оборудованием
-
Множественный дизайн модулей обеспечивает различные комбинации памяти и шин I/O
-
Использование ускорителей подключаемых к процессору для соответствующих платформ и приложений
-
FPGA для коммерческих задач, таких как Java, СУБД, аналитика
-
GPU для научных и вычислительных задач
Основные особенности OpenPOWER
-
Это общественная организация, деятельность которой не регулируется кем бы то ни было. Ни коммерческими, ни государственными структурами
-
Идея близка к концепции ПО с открытым кодом, но в применении к аппаратуре
-
Отличие от мира СПО – участники консорциума кооперируются, а не конкурируют.
-
Каждый участник делает свою часть или создаёт свои изделия, используя наработки остальных участников сообщества.
-
Программно-аппаратная архитектура суперкомпьютеров Ломоносов и Blue Gene/P.
Кластер:
-
Распределённая память
-
Не привязан к производителю
Альтернативы:
-
Общая память
-
«Кластерная архитектура»
Пиковая производительность: 1700.21 TFlop/s
Производительность (Linpack): 901.90 TFlop/s
Эффективность: 53%
Вычислительных узлов (Intel): 5 104
Вычислительных узлов (ГПУ): 1 065
Процессоры Intel Xeon 5570, 5670: 12 346
NVIDIA Tesla X2070: 2 130
Число процессорных ядер (x86): 52 168
Число процессорных ядер (ГПУ): 954 240
Оперативная память: 92 ТБайт
Коммуникационная сеть: QDR Infiniband / 10 GE
Система хранения данных: 1.75 ПБайт, Lustre, NFS, …
Операционная система: Clusrtx T-Platforms Edition
Занимаемая площадь (вычислитель): 252 м2
Энергопотребление (вычислитель): 2.8 МВт
«Ломоносов» - очередь задач
-
SLURM
-
Modules
-
module av[ailable] — список модулей
-
module add impi/4.1.0
-
module add intel
-
module add cuda
-
module li[st] — загруженные
-
module rm impi/4.1.0
-
module add openmpi/1.5.5-icc
-
sbatch — поставить задачу в очередь
-
sbatch -n16 -N2 -p test impi ./mytask
Общая характеристика систем Blue Gene
-
Массивно-параллельные системы с распределенной памятью
-
Технология System-on-chip (4 ядра, 8 FPU, контроллер памяти и др. на одном ASIC)
-
Высокая плотность упаковки
-
процессоры с низким энергопотреблением
-
-
Высокопроизводительный интерконект
-
несколько коммуникационных подсистем для различных целей
-
-
Ультра легкая ОС
-
выполнение вычислений и ничего лишнего
-
-
Стандартное ПО
-
Fortran/C/C++ и MPI
-
Blue Gene P – 1 стойка
-
1024 четырехъядерных вычислительных узлов
-
производительность одного вычислительного узла – 13.6 GF/s
-
производительность 1 стойки– 13.9 Tflops
-
оперативная память одного узла – 2 GB
-
суммарная оперативная память в стойке– 2 TB
-
узлов ввода/вывода 8 – 64
-
Размеры - 1.22 x 0.96 x 1.96
-
занимаемая площадь 1.17 кв.м.
-
энергопотребление (1 стойка) - 40 kW (max)
Конфигурация BlueGene P факультета ВМиК
-
2048 4-ех ядерных узлов
-
пиковая производительность 27.2 Tflop/s
-
Реальная производительность по тесту Linpack: 23.2 Тфлоп/с
-
85% от пиковой
-
-
общий объем ОЗУ 4 TB
Компоненты Blue Gene P
-
Основная единица – четырехядерный вычислительный узел (процессор), ядро – PowerPC 450 850Mhz + память (2GB)
-
Node card = 32 вычислительных узла + до 2х узлов ввода-вывода
-
Стойка – 32 node cards
-
Число процессоров в стойке 1024
-
Итоговое число ядер на стойку – 4096
-
Помимо вычислительных узлов, в состав системы также входят:
-
узлы ввода-вывода
-
узел управления системой
-
не менее одного узла front end (через них осуществляется доступ пользователей к системе)
-
сеть, связывающая компоненты системы
-
специализированная сеть для сообщения между сервисным узлом и узлами ввода-вывода
-
Характеристики вычислительного узла
-
4 ядерный 32-битный процессор PowerPC 850 Мгц
-
Двойное устройство для работы с вещественными числами с плавающей точкой (double precision)
-
2 Гб памяти
-
Работает под управлением облегченной ОС
-
Создание процессов и управление ими
-
Управление памятью
-
Отладка процессов
-
Ввод-вывод
-
Объем виртуальной памяти равен объему физической
3 режима использования ядер
-
SMP: 1 MPI процесс из 4 SMP нитей, 2 Гб памяти
-
DUAL: 2 MPI процесса по 2 SMP нити, 1 Гб памяти на MPI процесс
-
VNM: 4 MPI процесса
Процессоры ввода-вывода
Отличия по сравнению с вычислительным узлом:
-
Установлена полноценная ОС
-
Отсутствует подключение к сети тору
-
Имеется выход в 10-гигабитную сеть Ethernet
Основные коммуникационные сети
-
3-мерный тор
-
Используется для обмена сообщениями между соседними узлами, а также для многих коллективных операций
-
-
Коллективная сеть – дерево
-
Для глобальной коммуникации один-ко-всем (broadcast, reduction)
-
6.8 ГБ/с на порт
-
Соединяет все вычислительные узлы и узлы ввода-вывода
-
Используется для коллективных операций и коммуникатора MPI_COMM_WORLD
-
Высокоскоростная сеть для глобальных прерываний
-
Для MPI_Barrier
Double Hammer FPU
-
SIMD инструкции могут выполняться одновременно на двух FPU
-
Параллельные операции load/store
-
Данные должны быть выровнены по 16-байтовой границе
-
Иначе производительность будет значительно снижена
-
Даже хуже, чем при использовании только одного FPU
-
Компилятор сможет сгенерировать SIMD инструкции, только если данные в памяти расположены подряд (stride-one access)
-
Хотя при более высоких (-O4, -O5) уровнях оптимизации компилятор попытается сгенерировать SIMD инструкции и для данных, расположенных не подряд
-
-O3 –qarch=450d –qtune=450
Память
-
Оперативная память – до 2GB на вычислительный узел, пропускная способность 13.6GBps
-
Трёхуровневый кэш:
-
L1 – отдельный для каждого ядра, размер 32Kb
-
L2 – отдельный для каждого ядра, используется для предварительной выборки информации из кэша L1. Считывает\записывает по 16b за одно обращение.
-
L3 – разделен на две части по 4MB, доступ к ним имеют все четыре ядра, для каждого есть канал чтения и канал записи.
-
Состав ПО
-
Linux® на узлах ввода\вывода
-
MPI (MPICH2) и OpenMP (2.5)
-
Стандартное семейство компиляторов IBM XL: XLC/C++, XLF
-
Компиляторы GNU
-
Система управления заданиями LoadLeveler
-
Файловая система GPFS
-
Инженерная и научная библиотека подпрограмм (ESSL), математическая библиотека (MASS)
ОС вычислительного узла BlueGene P
-
Compute Node Kernel (CNK)
-
“linux-подобная” ОС
-
Нет некоторых системных вызово (fork() в основном). Ограниченная поддержка mmap(), execve()
-
Минимальное ядро – обработка сигналов, передача системных вызовов к узлам ввода-вывода, старт-завершение задач, поддержка нитей
-
Большинство приложений, которые работают под Linux, портируются на BG/P
-
Реализация MPI
-
MPICH2 1.0.x ( стандарт MPI 2.0)
-
Не поддерживает управление динамическими процессами
-
Для поддержки аппаратного обеспечения Blue Gene/P сделаны добавления и модификации в программной архитектуре MPICH2:
-
коллективные операции могут использовать различные сети при разных обстоятельствах (не только коллективную сеть, но и сеть с топологией тора или сеть глобальных прерываний)
-
Существуют оптимизированные версии функций MPI_Dims_create, MPI_Cart_create, MPI_Cart_map
-
Добавлены функции MPIX - расширение MPI, учитывающее специфику аппаратного обеспечения
-
OpenMP
-
_r суффикс для имени компиляторов например, mpixlc_r
-
–qsmp=omp
указание компилятору интерпретировать OpenMP директивы
-
Автоматическое распараллеливание
-qsmp