Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


История развития техники параллельных вычислений.



Идея параллельной обработки возникла одновременно с появлением первых вычислительных машин.

В начале 50-х гг. американский математик Дж. фон Нейман предложил архитектуру последовательной ЭВМ, но также он разработал принцип построения процессорной матрицы, в которой каждый элемент был соединен с четырьмя соседними и имел 29 состояний. Он теоретически показал, что такая матрица может выполнять все операции, поскольку она моделирует поведение машины Тьюринга.

Появление параллельных ЭВМ с различной организацией (конвейерные ЭВМ, процессорные матрицы, многопроцессорные ЭВМ) вызвано различными причинами.

Совершенствование этих ЭВМ происходило по внутренним законам развития данного типа машин

Конвейерные ЭВМ. Основополагающим моментом для развития конвейерных ЭВМ явилось обоснование академиком С.А.Лебедевым в 1956 г. метода, названного «принципом водопровода» (позже он стал называться конвейером).

Прежде всего был реализован конвейер команд, на основании которого практически одновременно были построены советская ЭВМ БЭСМ-6 и английская машина ATLAS .

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

Следующим заметным шагом в развитии конвейерной обработки, реализованном в ЭВМ CDC-6600 (1964 г.), было введение в состав процессора нескольких функциональных устройств, позволяющих одновременно выполнять несколько арифметико-логических операций: сложение, умножение, логические операции.

В конце 60-х гг. был введен в использование арифметический конвейер, который нашел наиболее полное воплощение в ЭВМ CRAY-1.Арифметический конвейер предполагает разбиение цикла выполнения арифметико-логической операции на ряд этапов, для каждого из которых отводится собственное оборудование. Таким образом, на разных этапах обработки находится несколько чисел, что позволяет производить эффективную обработку вектора чисел.

Сочетание многофункциональности, арифметического конвейера для каждого функционального блока и малой длительности такта синхронизации позволяет получить быстродействие в десятки и сотни миллионов операций в секунду. Такие ЭВМ называются суперЭВМ.

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

Многопроцессорные ЭВМ. Одной из первых полномасштабных многопроцессорных систем явилась система D825 фирмы "BURROUGHS". Начиная с 1962 г. было выпущено большое число экземпляров и модификаций D825.

Выпуск первых многопроцессорных систем, в частности D825, диктовался необходимостью получения не высокого быстродействия, а высокой живучести ЭВМ, встраиваемых в военные командные системы и системы управления.

С этой точки зрения многопроцессорные ЭВМ считались наиболее перспективными.

Система D825 содержала до четырех ПЭ и 16 модулей памяти, соединенных матричным коммутатором, который допускал одновременное соединение любого процессора с любым блоком памяти.

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

Совершенствование микроэлектронной элементной базы, появление в 80-х годах БИС и СБИС позволили перейти к реализации структур с очень большим количеством ПЭ.

Появились разработки по систолическим массивам, реализации многопроцессорных систем с программируемой архитектурой, ЭВМ с управлением от потока данных. Большая плотность упаковки транзисторов на кристалле позволила разместить в одной микросхеме несколько АЛУ. Это позволило реализовать принцип суперскалярной обработки.

170. СКИФ - базовая кластерная архитектура

«Разработка и освоение в серийном производстве семейства моделей высокопроизводительных вычислительных систем с параллельной архитектурой (суперкомпьютеров) 

и создание прикладных программно-аппаратных комплексов на их основе» (программа «СКИФ»).

Основополагающими архитектурными принципами создания

суперкомпьютерных конфигураций «СКИФ» являются:   базовая кластерная архитектура; иерархические кластерные конфигурации (метакластеры); универсальная двухуровневая архитектура

Базовая кластерная архитектура

Концепция создания моделей семейства суперкомпьютеров "СКИФ" основана на масштабируемой кластерной архитектуре, реализуемой на классических кластерах из вычислительных узлов на основе компонентов широкого применения (стандартных микропроцессоров, модулей памяти, жестких дисков и материнских плат, в том числе с поддержкой симметричных мультипроцессорных систем (SMP)).

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

Для организации параллельного выполнения прикладных задач на данном уровне используются:

Ø   оригинальная система поддержки параллельных вычислений – Т-система, реализующая автоматическое динамическое распараллеливание программ;

Ø   классические системы поддержки параллельных вычислений, обеспечивающие эффективное распараллеливание прикладных задач различных классов (как правило, задач с явным параллелизмом): MPI, PVM, Norma, DVM и др.

В семействе суперкомпьютеров "СКИФ" в качестве базовой классической системы поддержки параллельных вычислений выбран MPI, что не исключает использования других средств.

В части Т-системы обеспечивается

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

− обнаружение готовых к выполнению фрагментов задачи (процессов); 

− их распределение по процессорам; 

− их синхронизацию по данным.

Все эти (и другие) операции выполняются в Т-системе автоматически и в динамике (во время выполнения задачи). Тем самым при более низких затратах на разработку параллельных программ обеспечивается более высокая их надежность.

По сравнению с использованием распараллеливающих компиляторов, Т-система обеспечивает более глубокий уровень параллелизма во время выполнения программы и более полное использование вычислительных ресурсов  мультипроцессоров. 

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

Кроме указанных выше принципиальных преимуществ Т-системы перед известными сегодня методами организации параллельного счета в реализации Т-системы имеется ряд технологических находок, не имеющих аналогов в мире, в частности: 

1) реализация понятия "неготовое значение" и поддержка корректного выполнения некоторых операций над неготовыми значениями. 

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

2) оригинальный алгоритм динамического автоматического распределения процессов по процессорам.

Гетерогенные процессоры.

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

Для оптимизации организации на суперкомпьютерах «СКИФ» параллельного счета задач как с крупноблочным (явным статическим или скрытым динамическим) параллелизмом, так и с конвейерным или мелкозернистым явным параллелизмом, с большими потоками информации, требующими обработки в реальном режиме времени, концепция предусматривает возможность реализации универсальной двухуровневой архитектуры суперкомпьютеров:

Ø 1-й уровень – базовый (кластерный) архитектурный уровень;

Ø 2-й уровень – потоковый архитектурный уровень, реализующий модель потоковых вычислений (data-flow).

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

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

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

Тем самым, в общем случае, каждая прикладная проблема может быть разбита на:

− фрагменты со сложной логикой вычисления, с крупноблочным, эффективно реализуемые на кластерном уровне с использованием Т-системы и других систем поддержки параллельных вычислений;

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

Рассмотренные архитектурные принципы создания суперкомпьютеров семейства «СКИФ» позволяют эффективно реализовать любые виды параллелизма. 

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

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

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


Поделиться:



Последнее изменение этой страницы: 2019-04-10; Просмотров: 419; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.02 с.)
Главная | Случайная страница | Обратная связь