- •Содержание
- •Глава 1. Обзор литературы и постановка задачи 8
- •1.4 Модели программирования 41
- •6.4.10 Мероприятия и средства по защите окружающей среды 103
- •Введение
- •Глава 1. Обзор литературы и постановка задачи
- •1.1 Высокопроизводительные вычисления
- •1.2 Архитектура суперкомпьютеров.
- •1.2.1 Коммуникационные среды.
- •1.2.2 Топология соединительной сети суперкомпьютеров
- •1.2.3 Обзор коммуникационных сред
- •1.3. Программное обеспечение
- •1.3.1 Классификация ос
- •1.3.2Компиляторы
- •1.3.3 Компилятор gnu Compiler Collection
- •1.3.6 Библиотеки для программирования параллельных вычислений.
- •1.3.7 Библиотеки программирования вMpi,cudAиshmem.
- •1.4 Модели программирования
- •1.4.1 Модель передачи сообщенийMpi
- •1.4.2 ТехнологияOpenMp
- •1.4.3 Технология: shmem.
- •1.5 Постановка задачи.
- •Глава 2. Разработка Алгоритма тестирования
- •2.1 Алгоритм теста латентности и коммуникационной производительности.
- •2.2. Блок схема алгоритма
- •Глава 3. Разработка программного обеспечения
- •3.1 Описание и состав суперкомпьютера «эск-е»
- •3.2 Функциональная схема коммуникационной среды.
- •3.3 Основная конфигурацияPci
- •Коммуникационная среда pci Express
- •3.4 Текст программы
- •3.4.1 Объяснение значений параметров тестового по.
- •Глава 4. Экспериментальные исследования
- •Глава 5. Организационно – экономическая часть.
- •5.1. Технико-экономическое обоснование объекта проектирования.
- •5.2. Состав конструкторской группы и их должностные оклады.
- •5.3. Перечень этапов опытно-конструкторских работ при разработке программного обеспечения.
- •5.4. Расчёт сметы затрат на окр при разработке программного обеспечения.
- •5.5. Вывод
- •Глава 6. Безопасность и экологичность проектных решений
- •6.1. Цель и решаемые задачи
- •6.2. Опасные и вредные факторы при работе с пэвм
- •6.3. Характеристика объекта исследования
- •6.4. Мероприятия по безопасности труда и сохранению работоспособности.
- •6.4.1. Обеспечение требований эргономики и технической эстетики
- •6.4.1.1. Планировка помещения и размещение оборудования
- •6.4.1.2. Эргономические решения по организации рабочего места пользователя пэвм
- •6.4.1.3. Цветовое оформление помещения
- •6.4.2. Обеспечение оптимальных параметров воздуха рабочих зон
- •6.4.2.1. Нормирование параметров микроклимата
- •6.4.2.2. Нормирование уровней вредных химических веществ
- •6.4.2.3. Нормирование уровней аэроионизации
- •6.4.3. Создание рационального освещения
- •6.4.4 Защита от шума
- •6.4.5 Обеспечение режимов труда и отдыха
- •6.4.6. Обеспечение электробезопасности
- •6.4.7. Защита от статического электричества
- •6.4.8. Обеспечение допустимых уровней электромагнитных полей
- •6.4.9 Обеспечение пожаробезопасности
- •6.4.9.1 Обеспечение безопасной эвакуации персонала
- •6.4.9.2 Средства извещения и сигнализации о пожаре.
- •6.4.9.3 Способы и средства тушения пожара
- •Пути снижения выбросов и токсичности: стимулом к сокращению объёмов предполагается заинтересованность в сокращении расхода топлива.
- •6.4.10.1 Утилизация компьютеров и оргтехники
- •6.5. Инженерные расчеты
- •6.5.1. Расчет эвакуационного выхода.
- •Заключение
1.2 Архитектура суперкомпьютеров.
В соответствии с классичесой систематикой Флинна, все компьютеры делятся на четыре класса (рис. 1.2) в зависимости от числа потоков команд и данных [4].
Архитектура
Суперкомпьютеров
SIMD
MISD
MIMD
SISD
NUMA
UMA
COMA
ccNUMA
PVP
SMP
nccNUMA
Рис 1.2. Архитектура суперкомпьютеров
К первому классу (последовательные компьютеры фон Неймана) принадлежат обычные скалярные однопроцессорные системы: одиночный поток команд - одиночный поток данных (SISD). Персональный компьютер имеет архитектуру SISD (рис. 1.3), причем не важно, используются ли в ПК конвейеры для ускорения выполнения операций.
Процессор
Контроллер
Память
Рис 1.3. Архитектура Single Instruction, Single Data
Второй класс характеризуется наличием одиночного потока команд, но множественного потока данных (SIMD). К этому архитектурному классу принадлежат однопроцессорные векторные или, точнее говоря, векторно-конвейерные суперкомпьютеры. В этом случае мы имеем дело с одним потоком (векторных) команд, а потоков данных - много: каждый элемент вектора входит в отдельный поток данных. К этому же классу вычислительных систем относятся матричные процессоры. Они также имеют векторные команды и реализуют векторную обработку, но не посредством конвейеров, как в векторных суперкомпьютерах, а с помощью матриц процессоров [5].
Высокоскоростное
соединение
Локальная
память
Локальная
память
Локальная
память
Процессор
Процессор
Процессор
Контроллер
Хост
Компьютер
Рис. 1.4. Архитектура single instruction, multiple data
К третьему классу - MIMD - относятся системы, имеющие множественный поток команд и множественный поток данных. К нему принадлежат не только многопроцессорные векторные суперЭВМ, но и вообще все многопроцессорные компьютеры. Подавляющее большинство современных суперЭВМ имеют архитектуру MIMD.
Процессор
Процессор
Процессор
Контроллер
Контроллер
Контроллер
Общая
память
Рис 1.5. Архитектура Multiple Instruction stream, Multiple Data stream
Рассмотрим архитектуру NUMA (рис. 1.6) , относящуюся к классу MIMD
Процессор
Процессор
КЭШ
КЭШ
Оперативная
память
Оперативная
память
Сеть
передачи данных
Рис. 1.6 Архитектура NUMA
NUMA состоит из однородных базовых узлов, содержащих небольшое число процессоров с модулями основной памяти. Практически все архитектуры ЦПУ используют небольшое количество очень быстрой неразделяемой памяти, известной как кеш, который ускоряет обращение к часто требуемым данным. В NUMA поддержка когерентности через разделяемую память даёт существенное преимущество в производительности. Хотя системы с некогерентным доступом к NUMA проще проектировать и создавать, становится предельно сложно создавать программы в классической модели архитектуры фон Неймана. В результате, все продаваемые NUMA компьютеры используют специальные аппаратные решения для достижения когерентности кеша, и классифицируются как кеш-когерентные системы с распределенной разделяемой памятью, или ccNUMA. Как правило, существует межпроцессорное взаимодействие между контроллерами кеша для сохранения согласованной картины памяти (когерентность памяти), когда более чем один кеш хранит одну и ту же ячейку памяти. Именно поэтому, ccNUMA платформы теряют в производительности, когда несколько процессоров подряд пытаются получить доступ к одному блоку памяти [6].
Так же рассмотрим архитектуру UMA (рис 1.7.), относящуюся к тому же классу – MIMD
Процессор
Процессор
КЭШ
КЭШ
Оперативная
память
Рис. 1.7 Архитектура UMA
Все микропроцессоры в UMA-архитектуре используют физическую память одновременно. При этом время запроса к данным из памяти не зависит ни от того, какой именно процессор обращается к памяти, ни от того, какой именно чип памяти содержит нужные данные. Однако каждый микропроцессор может использовать свой собственный кэш.
Четвертый класс в систематике Флинна, MISD (рис 1.8.) , не представляет практического интереса,по крайней мере для анализируемых нами компьютеров. В последнее время в литературе часто используется также термин SPMD (одна программа - множественные данные). Он относится не к архитектуре компьютеров, а к модели распараллеливания программ и не является расширением систематики Флинна. SPMD обычно относится к MPP (т.е. MIMD) - системам и означает, что несколько копий одной программы параллельно выполняются в разных процессорных узлах с разными данными. [7]
Процессор
Процессор
Процессор
Контроллер
Контроллер
Контроллер
Память
Рис. 1.8 Архитектура Multiple Instruction stream, Single Data stream
Интересно также упомянуть о принципиально ином направлении в развитии компьютерных архитектур - машинах потоков данных. В середине 80-х годов многие исследователи полагали, что будущее высокопроизводительных ЭВМ связано именно с компьютерами, управляемыми потоками данных, в отличие от всех рассмотренных нами классов вычислительных систем, управляемых потоками команд. В машинах потоков данных могут одновременно выполняться сразу много команд, для которых готовы операнды. Хотя ЭВМ с такой архитектурой сегодня промышленно не выпускаются, некоторые элементы этого подхода нашли свое отражение в современных суперскалярных микропроцессорах, имеющих много параллельно работающих функциональных устройств и буфер команд, ожидающих готовности операндов. В качестве примеров таких микропроцессоров можно привести HP РА-8000 и Intel Pentium Pro.