Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

khor32

.pdf
Скачиваний:
26
Добавлен:
29.02.2016
Размер:
8.16 Mб
Скачать

б.9. Анализ мультипроцессорных вычислительных систем

ской настраиваемости) структуры получил внедрение в наиболее завершен-

ном виде. Системы стали обладать способностью к автоматической рекон-

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

для целей мультипрограммирования (одновременного решения нескольких

задач на различных подсистемах). Вычислительные системы приобрели большyю способность к статической (априорной) реконфигурации структур и состава для адаптации под область применения и условия эксплуатации. Такие ВС становятся все более распределенными и в реализации ориентированы на современную технологию микропроцессорных БИС. Недалеко то время, когда системы как ансамбли ЭП будут производиться в едином тех-

нологическом цикле.

Подтверждением сказанному служит архитектура Connection Machine (см. § 5.4). Эта ВС (на макроуровне) имеет архитектуру MLMD и представ-

ляeтся как композиция из суперпроцессоров. В качестве суперпроцессора

выступает SIMD-подсистема из 1024 вычислительных узлов, a в качестве последних кристаллы, содержащие по 16 ЭП. Таким образом, Connection Machine представляет собой <аиультисуперпроцессорную» систему.

Приведем еще один пример современной мультипроцессорной ВС. Как уже отмечалось (см. § 6.5), в фирме ММ были созданы первые мультипроцессорные ВС уже в середине 1950-x годов. Конечно, эти первые системы были достаточно просты, число процессоров в них имело порядок 10 (т. e. они не были многопроцессорными в современном понимании). Сейчас ВС рассматриваемого архитектурного класса действительно можно отнести к многопроцессорным, они состоят из сотен и сотен тысяч процессоров. Последнее послужило основанием называть их системами c массовым параллелизмом. В качестве примера такой ВС служит одна из разработок 1990-x

годов фирмы ЭВМ система SP2.

Отметим архитектурные особенности ВС IBM RS/6000 Р2 (серии RS/6000). Тип архитектуры ВС MIMD, это масштабируемая система c

массовым параллелизмом: число элементарных процессоров (или узлов) в ней составляет от 2 до 512. Память системы распределенная, т. e. каждый

ЭП имеет свою локальную оперативную и дисковую память. Связь между

ЭП осуществляется через высокопроизводительный коммутатор (IBM highperformance switch). Таким образом, функциональная структура системы IBM RS/6000 Р2 это мyльтипроцессор c распределенной памятью (см. рис. 6.5). Программное обеспечение системы IBM RS/6000 Р2 вюпочает, в частности, операционную систему АIХ, систему ЭВМ LoadLeveler,

реализующую режим пакетной обработки информации, операционную

среду РОЕ (Рага11е1 Operating Environment), поддерживающую парaллельные

вычисления.

283

6. Мультипроцессорные вычислите; ьные системы

Начало XXI в. ознаменовалось создание самой мощной в мире суперВС IBM В1ие Gene (см. § 6.8), которая полностью основывается на прин-

ципах модели коллектива вычислителей (см. § 3.1).

Анализ архитектуры мультипроцессорных ВС позволяет сделать нижеследующие выводы.

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

2.Архитектурные возможности ЭП неуклонно наращиваются, их структура претерпела трансформацию от простейших конфигураций без памяти до элементарных машин композиции из мощных микропроцессоров, оперативной памяти и внешних запоминая ощих устройств (и даже устройств ввода-вывода информации).

3.Мультипроцессорные ВС, начавшие свою историю как композиции из нескольких процессоров, превратились в системы c массовым параллелизмом (c количеством процессоров порядка 1C 2-105).

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

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

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

Эволюционное развитие архитектуры мультипроцессорных ВС так же, как конвейерных и матричных ВС (см. ' 4.4, 5.1 и 5.5), привело к «революционном» модернизации первоначальных канонов Любая современная высоко-

производительнaя ВС в зависимости от функ уионального уровня рассмот-

рения может выглядеть как MISDили SIMD-, или MIMD-система, более

того, ее функциональная структура одновременно обладает свойствами конвейерных, матричных и мультипроцессо1 ных систем. Исследователи параллельных вычислительных технологий, архитекторы и создатели промышленных ВС (независимо от их первоначальных архитектурных концепций) пришли к необходимости создания расп 9еделенных ВС c программи - руемой структурой.

7. BЫЧИCЛИTEЛЬHЫE СИСТЕМЫ ПРОГРАММИРУЕМОЙ СТРУКТУРОЙC

Десять лет, прошедшие c момента появления первой ЭВМ, позволили выявить пределы в рaзвитии средств обработки информации на основе концептуальной машины Дж. фон Неймана и на основе модели вычислителя (см. ' 2.10). Исследователи и проектировщики средств обработки информации уже в начале 60-x годов %Х В. пришли к пониманию необходимости тех-

нической реализации новых принципов обработки информации.

Исследования по ВС, основанным на модели коллектива вычислителей, были начаты в Институте математики Сибирского отделения АН СССР в начале 1960 х годов по инициативе математика и механика C.Л. Соболева (1908-1989; академик АН СССР c 1939 г.). Результатом этих исследований явилось на- учно-техническое направление «Вычислительные системы c программируемом структурой». Такие системы обладают способностью адаптации под структуры и параметры решаемых задач.

B главе 7 приведены основные понятия ВС c программируемой структурой и описаны архитектуры систем «Минск-222», МИНИМАКС, СУММА,

АМКРоС, IvfBC.

7.1.Понятие o вычислительных системах c программируемой структурой

B гл. 4-6 было показано, что в конвейерных, матричных и мультипроцессорных ВС принципы модели коллектива вычислителей воплощены недостаточно полно. Пожалуй, самым главным недостатком архитектуры таких В С является наличие единого ресурса (устройства управления, управляющей ЭВМ, коммутатора и т. п.). Отказ единого ресурса приводит к отказу ВС в целом, что неприемлемо даже c позиций надежности и живучести. Единый ресурс не позволяет организовать мультипрограммную работу, при которой на различных подсистемах связных подмножествах технических ресурсов (элементарны процессорах) будут выполняться одновременно различные программы.

285

7. Вычислительные системы c программируемой структурой

Значительный прогресс в практической реп ллизации принципов модели коллектива вычислителей обеспечивают ВС c распределенными средствами

управления. В отечественных научно-технических работах к таким системам относят ВС c программируемой структурой.

7.1.1. Этапы исследований

Работы в области высокопроизводительных средств обработки информации выполнялись в Институте математики (ИМ) CO АН СССР в 1960-х годах под руководством специалиста по вычислительной технике Э.B. Евреинова (1928, профессор c 1972 г.). Первая раб.зта сотрудников ИМ CO АН

СССР [14] o возможности построения ВС высоз ой производительности опередила американские публикации в данной области примерно на б месяцев. В середине 1960-x годов вышла в свет моногржiфия [17], обобщающая первые результаты работ ИМ CO АН СССР по функциональным структурам ВС и параллельному программированию. Во второй половине 1960-х годов были созданы и первые ВС [5]: «Минск-222» х;1965-1966) и управляющая ВС для автоматизации научных исследований ([964-1967). к началу 1970-x годов завершилось формирование концепции ВС c программируемой структурой, как средств обработки информации, основанных на модели коллектива вычислителей. Следует отметить, что первоначальное название рассматpиваемых средств «Однородные вычислительные системы» [14]; в конце 1970-x годов закрепляется название «ВС c программируемой структурой» (см. [5], стр. 26), так как оно точнее отражает архитектурные возможности систем коллективов вычислителей. , <Однородные ВС» и «ВС c программируемой структурой» следует рассма' ривать как синонимические термины.

Начиная c 70-x годов ХХ в. теоретически е и проектные работы в Сибирском отделении АН СССР (ныне CO РАН' по ВС c программируемой

структурой ведyтся под руководством одного из разработчиков первой ВС c программируемой структурой «Минск -222» B.Г. Хорошевского (1940; д-р текн. наук c 1974 г., чл.-кор. РАН c 2000 г.).

Главными направлениями работ становят;я:

архитектура ВС;

теория структур ВС: анализ и синтез структур сетей межмашинных

связен;

• теория функционирования ВС: организация оптимального (субоптимального, стохастически оптимального) функционирования ВС в моно- и мультипрогpаммных режимах (обработки набо ров и обслуживании потоков параллельных задач);

286

7.1.Понятие o вычислительных системах c программируемой структурой

надежность и живучесть (потенциальная и структурная) ВС;

самодиагностика и самоконтроль ВС;

отказоустойчивые параллельные вычислительные технологии;

проектирование ВС;

распределенные ОС;

системы параллельного программирования;

парaллельные алгоритмы и программы для решения прикладных задач. Работы по ВС из академической сферы распространяются в промыш-

ленность, под руководством автора данной книги создается ряд систем: МИНИМАКС (1975), СУММА (1976), МИКРОС-1 (1986), МИКРОС-2 (1992), МИКРОС-T (1996). Выходит в свет большое число публикаций как сотрудников СО АН СССР (СО РАН), так и других организаций [5, 6, 13, 14, 17, 18].

B 90-x годах ХХ в. активизируются работы по построению отечественных промышленных ВС c массовым парaллелизмом. Работы по созданию систем семейства МВС (генераций МВС-100 и МВС-1000) выполнены в кооперации научно-исследовательских институтов РАН и промьпцленности.

Вычислительные масштабируемые системы генерации МВС-100 эксплуатируются c 1992 г. Количество процессоров в различных конфи урациях составляет от 4 до 128; производительность конфигураций ВС от

400 MFLOPS до 10 GFLOPS. Системы генерации МВС-1000 поставляются c

1998 г.; их большемасштабные конфигурации ВС позволяют достичь производительности 10... iO3 GFLOP S .

Вычислительные системы c программируемой структурой это распределенные средства обработки информации. B таких ВС нет единого функционально и конструктивно реализованного устройства: все компонен-

ты (устройство управления, процессор и память) являются распределенны-

ми. Тип архитектуры ВС MIMD ; в системах заложена возможность прогpaммной перенастройки архитектуры MIMD в архитектуры MISD или SIMD (см. разд. 3.4.2).

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

мым средствам обработки информации и допускают формирование

конфигураций c массовым параллелизмом (Sса1аЫе Massively Рата11е1 Architecture Computing Systems).

Вычислительные системы c программируемой структурой сочетают в себе достоинства универсальных и специализированных средств обработки

информации, в них допускается автоматическое формиpование виртуальных

проблемно-ориентированных конфигураций. B таких ВС c достаточной пол-

287

7. Вычислительные системы c программх руемой структурой

нотой воплощены перспективные архитектурные принципы, системы основаны нa модели коллектива вычиcлитeлeй (см. § 3.1), обладают большими

потенциальными возможностями по обеспечен ю высоких значений пoкaзa-

тeлeй эффективности функционирования.

7.1.2. Определение вычислител^эной системы

При построении ВС c программируемой структурой доминирующими являются следующие три принципа:

1) массовый параллелизм (парaллельност выполнения большого числа операций);

2)прогpаммируемость (автоматическая перестpаиваемость или реконфигурируемость) структуры;

3)конструктивная однородность.

Следует подчеркнуть, что принцип прс граммируемости структуры ВС является таким же важным, каким в свое время было предложение

Дж. фон Неймана относительно организации в ЭВМ автоматической модификации программ. (Он предложил хранить программу в памяти машины вместе c данными, что позволило модифицировать прогрЕ мму c помощью самой ЭВМ.)

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

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

устройства. Вычислительный модуль (ВМ) служит как для переработки и хранения информации, так и для выполнения функций по управлению системой в целом. Системное устройство (СУ) аппаратypная часть ЭМ, предназначенная только для обеспечения вз имодействия данной ЭМ c ближайшими соседними машинами (точнее, c системными устройствами, c которыми имеется непосредственная связь). Фрагмент возможной структуры ВС рассматриваемого класса показан на рис . 3.7 и 6.8.

B качестве вычислительного модуля в общем случае рассматривается аппаратурно-прогpаммный комплекс, структу^ а и состав которого допускают варьирование в широких пределах. Далее под ВМ будем понимать лишь аппаратурнyю часть этого комплекса. Минимальный состав ВМ представляется (элементарным или локальным) процессе яром c (локальной) оперативной памятью; промежуточный ЭВМ c канал ами (например, прямого дос-

288

7.1. Понятие o вычислительных системах c программируемой структурой

тупа к памяти, селекторными, мультиплексными), внешними запоминающими устройствами, устройствами ввода-вывода информации, терминaлами и т. п.; максимальный вычислительной системой (или средством, осно- вaнным на модели коллектива вычислителей). Вычислительные модули мо-

гyт быть произвольного состава, но для компоновки каждого из них в пре-

делах одной ВС, как правило, используется один и тот же тип процессора.

При более широкой трактовке класса ВС c программируемой структурой

можно ограничиться лишь требованием программной совместимости вычислительныx модулей.

Простейшей и развитой конфигурациям СУ соответствуют локальный коммутатор и коммуникационный процессор. Простейшей конфигурацией ЭМ является ЭП, т. e. композиция локального процессора (АЛУ и локальной памяти) и предельно простого локального коммутатора (см. рис. 3.7).

Системы c программируемой структурой предназначены для решения

задач произвольной сложности (c произвольным объемом вычислений) как в моно-, так и в мультипрограммных режимах, они могут использоваться как вычислительные средства общего назначениялибо как проблемно-ориен- тированные, могут эксплyатироваться автономно либо в составе сложной системы.

7.1.3. Сосредоточенные и распредeленные вычислительные системы

B рaзд. 7.1.1 упоминалось, что ВС c программируемой структурой яв-

ляются распределенными средствами и в архитектурном, и в фушсционааь-

ном планах. B самом деле, в них любые ресурсы (процессоры, память и уст-

ройcтва управления, и системные устройства) представляются множествами

соответствующих модулей. Тем не менее в классе систем c программируемой

структурой выделяют (пространствеино) сосредоточенные и распределеняые

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

К распределенным ВС относят макросистемы

системы сложной

конфигурации, в которых в качестве функциональных элементов выступают

10-685

289

7. Вычислительные системы c программ ''руемой структурой

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

Распределенная ВС объединение прос;пранственно удаленных друг от друга сосредоточенных ВС, основанное на гринципах:

• параллельности функционирования сосредоточенных ВС (т. e. спо-

собности нескольких или всех сосредоточенных систем совместно и одно-

., временно решать одну сложную задачу, представленную параллельной про-

граммой);

программируемости структуры (т. e. во: зможности автоматически настраивать сеть связи между сосредоточенными ВС);

гомогенности состава (т. e. программной совместимости различных сосредоточенных ВС и однотипности элементарных машин в каждой из них).

Распределенные ВС в общем случае пре, 1назначаются для реализации параллельных программ решения задач (произвольной сложности или c

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

Любое функциональное взаимодействi:е между сосредоточенными ВС, составляющими распределенную систему, осуществляется через сеть связи. в сеть связи включаются каналы и сис темные устройства, распределенные по сосредоточенным ВС. в распределенных ВС нет принципиальных ограничений на физическую природу кап палов; в них могут использо- ваться двухпроводные, коаксиaльные и радиорелеиные линии связи, средства коммуникации на основе волоконнои оптики , микроволновой и спутниковой связи и др. На системное устройство возлагается выполнение функций, свойственных СУ для сосредоточенных ВС и устройствам связи для вычислительных сетей. в элементарные функции л юбого СУ входят: обмен информацией между сосредоточенной ВС и каналом, a также обеспечение транзитной передачи информации. В мощны. распределенных ВС систем- ное устройство может быть реализовано как параллельный сервер.

Предельным по простоте вариантом сосредоточенной ВС является ЭМ, следовательно, простейшим вариантом распределенной ВС является совокупность однотипных и регулярно соединенных ЭМ, использующая «длинные» программно-коммутируемые каналi ,i межмашинной связи. в этом случае в состав ЭМ входят однотипные СУ.

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

290

7.1. Понятие o вычислительных системах c программируемой структурой

компонyются из программно-совместимых ЭМ. B данном случае сеть связи

организуется посредством программно-совместимых системных устройств.

B топологическом плане такие ВС классифицируются как централизованные, децентрализованные, кольцевые и радиально-кольцевые системы. То-

пологическое изображение названных систем аналогично схемам, общепри-

нятым для вычислительных сетей.

Распределенные системы, в которых выполняется условие программной совместимости ЭМ, относятся к гомогенным ВС. B теоретическом плане можно рассматривать и гетерогенные распределенные ВС, состоящие из программно-несовместимых ЭМ и сосредоточенных ВС и имеющие сеть

связи c нерегулярной структурой. Однако реализация гетерогенных систем

наталкивается на большие трудности, связанные прежде всего c организаци-

ей их эффективного функционирования.

B подкласс распределенных ВС входят вычислительные сети. Несмотpя на внешнюю схожесть распределенных систем и сетей, существует принципиальное отличие в их функционировании. Вычислительные сети

выполняют обработку потоков задач, как правило, представленных после-

довательными программами. B сетях параллельные программы также могут

быть реализованы, если в их состав входят сосредоточенные ВС (например,

в сети ААРА такой системой была ILLIAC-IV; в глобальной сети Internet

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

B распределенных ВС наряду c режимом работы, характерным для вычислительных сетей, реализуется также режим решения общей сложной задачи. Задача представляется параллельной программой, каждая макроветвь (или ветвь) которой реализуется на своей сосредоточенной ВС (или ЭМ). Для распределенных ВС при решении одной сложной задачи характерен режим группового обмена информацией между абонентами (маип1

машины, машины пользователь).

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

классу средств обработки информации по сравнению c вычислительными

10* .

291

 

7. Вычислительные системы c программ лруемой структурой

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

На производительность распределенных ВС (при реализации параллельных программ сложных задач) сильно влияют скорость передачи информации в каналах и запаздывание сигналов при передаче информации из одной сосредоточенной ВС (в простейшем варианте системы из одной ЭМ) в другую. Для уменьшения этого влиянi ля используется совмещение

счета c обменом информацией и примененv:е в полной мере методики крупноблочного распараллеливания сложных з. .дач (см. § 3.3).

При распараллеливании процесса вычислений (рaзбиении задачи на параллельные ветви информационно связан iые подзадачи и размещении их в ЭМ системы) нужно стремиться к уь :рупнению частей задачи, решаемых автономно каждой ЭМ, и к уменьшен Сию количества информации, передаваемой по каналам между машинами. Практика распараллеливания сложных задач показывает, что по мере укрупнения «автономных» частен задачи имеет место уменьшение количества ин формации, передаваемой при межмашинных взаимодействиях. Поэтому даже при относительно малой скорости передачи информации по межмашия ным каналам существует ре- aльная возможность эффективно решать задачу не только на сосредоточен-

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

При построении распределенных ВС большое значение приобретают экономические факторы. Так, стоимость распг еделенной ВС (в сравнении c сосредоточенной системой) в существенной м ре определяется стоимостью достаточно дорогих физических каналов связи между рассредоточенными в пространстве вычислительными ресурсами (с осредоточенными системами или в простейшем случае ЭМ). Следовательно, для снижения стоимости системы в целом приходится при построении F ВС использовать минимальное число каналов связи между ЭМ. B простейших приложениях достаточно ограничиться топологией сети межмашинных связей, обеспечивающей непосредственную связь любой ЭМ c двумя ЭМ (достаточно использовать одномерные или кольцевые структуры), a также применить способ межмашинной передачи информации в последовател] )ной форме.

Появившиеся в конце ХХ в. так называемые кластерные ВС или вычислительные кластеры представляют варианi ы сосредоточенных и распределенных систем. Различают физические и л югические кластеры. Первые кластеры являются специально сконфигуриро ванными ВС из серийных ап- паратурно-программных средств ЭВМ. Логические (или виртуальные) кластеры организуются в аппаратурно-программ1 [ои среде вычислительных се-

292

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]