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

khor32

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

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

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

Материал, изложенный в последующих разделах кни и, относится в ос-

новном к сосредоточенным ВС. Здесь мы ограничимся ссылкой на книгу [5],

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

АСТРА. Эта система создана ИМ СО АН СССР и Новосибирским электротехническим институтом МВ и ССО РСФСР; работы по проектированию ВС были начаты в 1970 г., a первая ее конфигурация была сдана в эксплуатацио в 1972 г. Среди конфигураций ВС АСТРА имелись городские и междугородкые (Новосибирск Москва). Они формировались из средств ЭВМ «Минск-32» и использовали телефонные каналы связи. Были выполненыпроекты распределенных ВС и на базе машин третьего поколения семейства ЕС ЭВМ [5].

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

ВС. Наиболее перспективны распределенные ВС, основанные на принщшах

прогpаммируемости межмашинных связен и конструктивной однородности. Опыт 70-x годов ХХ столетия в создании и эксплуатации распреде-

ленных ВС убеждает в том, что такие системы являются эффективным ин-

стpyментарием решения сложных задач. Установлено, что при реализации

параллельных программ сложных задач на n машинах распределенной ВС

достигается производительность А„пгв (А„

коэффициент, А„ > 1; и -

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

Создание распределенных ВС из средств серийно выпускаемых ЭВМ и ВС не вызывает существенных инженерных и математических трудностей.

Как правило, требуются незначительные доработки базового ПО, связанные c реализацией системных операций в виде подпрогpамм и c введением системного диспетчера в ОС. Это же самое можно сказать и относительно организации (логических) вычислительных кластеров на базе существующих компьютерныx сетей.

Таким образом, распределенные ВС в сравнении c компьютерными

сетями являются более общим классом средств переработки информации.

B заключение следует отметить, что в индустрии обработки информатш

в конце ХХ в. получили развитие так называемые GRID-технолог ии (GRID

Global Resource Information Distribution). На основе этих технологий создаются

бопьшемасштабные пространствеино-распределег яые системы обработки ин-

формации, способные реализовать параллельные а горитмы решения сyпep-

293

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

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

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

ствления параллельных вычислений. B GRID-c истеме могут использоваться

гетерогеые и несовместимые вычислитeльные средства, однако для их совмеcтной работы над параллельными алгоритмами до лжны быть применены специальные механизмы (например, протоколы) поддержки. Очевидно, что введение

в Internet программных компонентов для реализации параллельных алгоритмов

на ее распределенных вычислительныx ресурсах превращает сеть в GRIDсистему. Из сказанного следует, что GRID-систе иiа это ничто иное, как рас-

пpеделеннaя ВС в том понимании, которое представлено в данном разделе.

7.2. Архитектурные особенности вычислительных систем c программируемой структурой

B архитектурном плане ВС c программи:)уемой структурой это ап- паратурно-прогpаммные объекты, основанные на модели коллектива вычислителей. Первоначальное представление o функциональной организации ВС дано в гл. 3 и § 7.1. B этом параграфе будут изложены детализация структуры ВС, элементы теории структур, описаны режимы функционирования ВС и способы обработки информации в них и, наконец, отмечены аспекты, связанные c организацией ОС. Материал § 7.2 вл% есте c содержанием гл. 3 позволит достаточно полно судить об архитек :уре ВС c программируемой

структурой.

7.2.1. Структура вычислительной системы

Как известно (см. рaзд. 3.1.2), (макро)ст руктура ВС описывается гра- ф ом G, множеству вершин которого сопоставл ены ЭМ (или системные уст-

ройства, или локальные коммутаторы), a множеству ребер линии меж-

., машинных связен.

Какие же структуры следует использовztть в ВС, особенно в масшта-

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

достичь «эффективного» решения задач (c учЕ,том ненадежности компонен-

тов ВС). Рассмотрим подробнее структурные аспекты, прежде всего связанные c производительностью и живучестью ВС,

294

7.2. Архитектурные особенности ВС c программируемой структурой

Требования, предъявляемые к структуре ВС. Остановимся на тре-

бованиях, которые предъявляются к структурам современных ВС.

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

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

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

2.Удобство адресации элементарных машин и «переноса» подсистем

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

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

3. Осуществимость принципа близкодействия и минимума задержек при межмашинных передачах информации в ВС. Принцип близкодействия предопределяет реализацию обменов информацией между «удаленными» друг от друга ЭМ через промежуточные машины системы (см. разд. 3.2.1). Следовательно, в условиях ограниченности числа связей y каждой ЭМ

структура должна обеспечивать минимум задержек при транзитных переда-

чах информации.

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

Для достижения высокой производительности ВС при существующих возможностях микропроцессорной техники требуется количество ЭМ порядка 10-106. Для поддержки большемасштабности (такого массового па-

рaллелизма) необходимо, чтобы структура ВС обладала способностью эф-

фективно осуществлять межмашинные обмены информацией в условиях

295

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

невозможности реализации связей по полному графу (например, из-за ограниченности числа выводов c корпусов БИС).

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

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

всистеме при ненадежных линиях межмашинн ых связей.

7.Технологичность структур ВС. Структ тура сети межмашинных связей ВС не должна предъявлять особых требований к элементной базе, к технологии изготовления микропроцессорных БИС. Системы должны быть восприимчивы к массовок технологии, их «вп числительное ядро» должно формироваться из массовых микропроцессорн:эiх БИС. Последнее позволит достичь приемлемых значений технико-экономических показателей ВС.

Анализ путей удовлетворения перечислЕ иным требованиям приводит к безальтернативному выбору однородных (ил 4 регулярных, т. e. описываемых однородными графами) структур для формирования ВС. Заметим, что аналогичный вывод сделан в гл. 3 на основе опыта применения методики крупноблочного распарaллеливания трудоемки х задач.

Структурные характеристики ВС. Структура ВС представляет собой граф G (как правило, однородный для масштаб руемых и большемасштабных

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

диаметр d структуры. Диаметр максималь :мое расстояние, определенное на множестве кратчайших путей между двумя в ^ршинами структуры ВС:

 

d = тах {дij },

(7.1)

 

1,]

 

средний диаметр

 

 

d

 

 

= (N - 11lгq,

(7.2)

 

l=1

 

где dij

расстояние, т. e. минимальное число ребер, образующих путь из

вершины i в вершину j; i, j Е {0, 1, ... , N -1 }; п1

число вершин, находя-

296

7.2. Архитектурные особенности ВС c программируемой структурой

щихся на расстоянии 1 от любой выделенной вершины (однородного) гра-

фаС.

Показателем, оценивающим структурную коммутируемость ВС, является вектор-функция

i((G, s, s') = {Кh(о, s, s')}, h Е {1, 2, ..., [-ЁЧ/2]},

(7.3)

в которой координата 1(h (G, s, s') есть вероятность реализации в системе

при заданных структуре G и коэффициентах готовности s и s' соответственно одной ЭМ и линии связи h (см. § 2.8.4) одновременных непересекаю-

щихся

межмацп нных взаимодействий (обменов информацией между ЭМ);

[NI 2]

целая часть числа N / 2.

 

Структурная живучесть ВС оценивается вектор-функцией

 

 

L(G, s, s') = {L (G, s, s')}, г Е" ={2,3,...,N}.

(7.4)

Здесь .(G, s, s')

вероятность существования подсистемы ранга г (т. e.

подмножества из г работоспособных ЭМ, связность которых устанавливается через работоспособные линии связи) при заданных структуре G, коэффициентах готовности s и s' ЭМ и линии связи соответственно.

Введенные показатели позволяют осуществить c достаточной полно-

той анализ структурных возможностей ВС и анализ структурной живучести

ВС, в частности. Отметим прикладное значение показателей (7.1)—(7.4). Прежде всего подчеркнем, что диаметр (7.1) и средний диаметр (7.2)

это структурные характеристики, связанные c производительностью ВС.

диаметр структуры ВС определяет максимально необходимое число тран-

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

По координатам вектор-функции структурной коммутируемости ?((G, s, s') можно характеризовать ВС относительно ее возможностей по

реализации обменов информацией между ее машинами. Эта характеристика

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

граммных режимов работы ВС. B монопрогpаммном режиме функционирования системы можно ограничиться тремя известными схемами обмена ин-

формацией (см. рaзд. 3.3.5). Тогда от структуры ВС требуется, чтобы:

1) при дифференцированном обмене имелась возможность реализации одного взаимодействия между любыми двумя ЭМ;

2) при трансляционном обмене реализовывалась одновременная пере-

дача информации из одной ЭМ во все остальные;

297

2, ... ,

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

3)при конвейерно-парaллельном обмене выполнялось одновременно [NI 2 ] взаимодействий между машинами [NI 2 ] пар.

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

B мультипрогpаммных режимах функционирования система программ-

ным способом разбивается на подсистемы. Маке жмальное число подсистем в ВС определяется, очевидно, величиной [NI 2] . B случае мультипрограммирования обмены совершаются лишь в пределах подсистем. Тогда, например, координата lCh (G, s, s') вектор-функции (7.3) будет информировать o при-

способленности структуры к генерации в пределах ВС h подсистем или к одновременному решению на ВС h задач, 1 < h < [NI 2].

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

[NI 2] . B этом случае вводят и виртуальные линии межмашинных связей ВС. Применительно к такой мультипрограммный работе ВС координата

2(h (G, s, s') вектор-функции структурной комМ утируемости должна опреде-

ляться как условная вероятность описанного события (7.з), причем в качестве

условия выдвигается то, что ни одна из физич еских линий связи (ни одно из ребер графа G) не должна обслуживать долее чем l взаимодействий (разделяться более чем на l виртуальных линий); l Е {1, hЕ{1,2,...,[NI2]}.

Координаты вектор-функции структур ой живучести (7.4) характеризуют приспособленность ВС в условиях отказов ЭМ и линий связи к порождению подсистем тех или иных рангов, с педовательно, приспособленность ВС к решению задач заданной сложности. B частности, координата L (G, s, s') вектор-функции структурной живучести (7.4) определяет воз-

можности структуры по реализации на ВС зам дач ранга r, т. e. сложных задач, представленных параллельными прогpамм ами c числом ветвей, равным rE {2,3,...,N}.

Подмножество координат

{G Y o (G, s, s'), 'G° +1 (G, s, s'), ... , .G r * (G, s, s')}

вектор-функции (7.4) характеризует приспосоЕ^ленность ВС по выполнению на ней адаптирующихся параллельных програл м, допускающих автоматиче-

298

7.2. Архитектурные особенности ВС c программируемой структурой

ское изменение своих рангов от г ° до г , где 1 <г0. г* < N. При г ° = n и

r = N вектор-функция (7.4) будет характеризовать способность ВС c программируемой структурой к организации в ней виртуальных образований,

обладающих живучестью (гл. 10, [5, 6]).

Перспективные структуры ВС. B гл. 3 (см. разд. 3.1.2) рассматривались структуры, перспективные для формирования ВС. B гл. 4—б описаны структуры промышленных ВС c массовым параллелизмом. Здесь же рас-

смотpим структуры, удовлетворяющие требованиям, изложенным выше,

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

структурой).

B компьютерной индустрии получили распространение п-мерные структуры ВС, известные сейчас как циркулянтные (Circulant Structuтes).

Впервые они были определены и исследованы в Отделе вычислительных систем ИМ СО АН СССР в начале 1970-x годов и первоначально назывались Дп-графами [5] . По определению Дп-граф, или циркулянтная структура, есть граф G вида: {N; (01, 0)г, ..., Сип }, в котором:

N количество вершин или порядок графа;

вершины помечены целыми числами i по модулю N, следовательно,

iE{0,1,...,N - 1};

вершина i соединена ребром (или является смежной) c вершинами

i± (01, i ± с )2 , ... , i д: о) (тод N);

{гв1 , 0)2, ... , о,, } множество целых чисел, называемых образующил и,

таких, что 0 < СО1 < (вг < ... < (ап < (N + 1)12, a для чисел N; о , (в2, ..., (вп наибольшим общим делителем является 1;

• п размерность графа;

2п степень вершины в графе.

B качестве примера рассмотрим D2-граф, или двyмерный циркулянт

вида: {12; 3, 4}, представленный на рис. 7.1.

Графы G вида {N; 1, 0)2, ... , (вп }, т. e. D -графы или циркулянты c

единичной образующей (Loop Networks пет-

левые структуры) интенсивно изyчаются в по-

следнее время. Циркулянтные структуры

 

{N;1, 0)г } широко внедрены в практику ВС, и

 

читатели уже имели c ними дело при изучении

 

матричных ВС (см. гл. 5). Так, например, на

 

рис. 5.3 изображен циркулянт {64; 1, 8} , отра-

 

жающий структуру квадранта ВС ILLIAC-IV.

Рис. 7.1. D2-граф: {12; 3, 4}

299

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

a

б

Рис. 7.2. D2-граф: {15; 1, 4} :

a — двумерная матрица; б — хорда] Зое кольцо

Структуры, изображенные на рис . 5.3 и 7 1, представлены в виде двумерных матриц. На практике часто использует ^я изображение структур как хордовых колец (рис. 7.2).

Целые числа i Е {0, 1, 2, ... , N —1 }, отмечающие вершины Дп-графа,

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

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

1) создавать отказоустойчивые параллел: ,ные программы, неориентированные на физические номера машин;

2)реализовывать мультипрогpаммные режимы обработки информации;

3)исключать отказавшие вершины-маши Сны из подсистем, a значит, обеспечить живучесть ВС.

Пусть параллельная программа реализуетс. а на некоторой подсистеме ВС

(т. e. на подгpафе в пределах Дп графа). далее, пусть i физический номер

элементарной машины (вершины Dn-гpафа), искт гючаемой из подсистемы (подграфа), а j номер ЭМ, включаемой в нее, i, j Е {0, 1, ... , N — 1}. Тогда, оче-

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

a : = [a + (j — i)] mocl N,

где

300

обхватом).

7.2. Архитектурные особенности ВС c программируемой структурой

a

б

Рис. 7.3. Фрагменты Л(N, v, g)-графов:

а— v = 4, g = 4; 6— v =3,g=6

В качестве структур ВС, допускающих масштабирование (изменение

числа машин) без коренной перекоммyтации уже имеющихся межмашин-

ных связей, используются Л(N, v, g)-графы. В такие графы [18] вкладывают-

ся Дп-графы; Л(N, v, g)-граф это неориентированный однородный граф c

числом и степенями вершин соответственно N и v и значением обхвата g (рис. 7.3).

В Л(N, v, g)-графах каждая вершина при v > 3 входит в не менее v кратчайших простых циклов длиной g (длина кратчайшего цикла в графе называется При v = 2 Л(N, v, g)-граф является простым циклом c N вершинами.

Анализ и синтез структур ВС. Введенные показатели (7.1)—(7.4) в равной степени пригодны и для анализа, и для синтеза структур ВС. Как в том, так и в другом случае требуется осуществлять расчет значений структурных показателей ВС. Получение аналитических выражений для координат вектор-функций структурной коммyтируемости ВС (7.3) и структурной живучести (7.4) является сложной задачей, разрешимой лишь для частны случаев. Для расчета этих показателей используют метод статистического моделирования.

Проблема синтеза структур заключается в поиске таких графов G *, ко-

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

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

живучести ВС, то G* должна быть адаптирована под программирование живyчиx виртуальных конфигураций. Или же, если при создании ВС требуется

максимизировать эффективность использования ЭМ, то определяется сгрук-

301

r < N.

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

тура G* , которая минимизирует задержки (Latency латентность) при тран-

зитных передачах информации между ЭМ.

На этапе выбора структур ВС заметную г оль играют интуитивные со-

ображения. Так, например, было очевидно, что кольцевые и тороидальные структуры ВС обладают большей живучестью, чем «линейка» и «решетка» соответственно.

Проблема синтеза структур ВС может бь ть сформулирована c ориентацией на любой из структурных показателей (7.1)—(7.4). Здесь мы дадим

следующую постановку: найти структуру G * которая обеспечивала бы максимум координаты вектор-функции структу )ной живучести (7.4), т. e.

max Gr (G, s, s') = 4((.т

* )

(7.5)

G

 

 

при заданных значениях N, r, v, s, s'. Структуг a G * , для которой выполняется (7.5), называется оптимальной. B упрощенной постановке можно

ограничиться поиском G * в некотором классе структур, например в классе

D- или Л(N, v, g)-графов.

K сложным относится проблема синтеза оптимальных структур большемасштабных ВС, она практически решается мри помощи статистического моделирования (методом Монте-Карло) и, следовательно, c использованием

мощных вычислительных средств. Трудоемкос' гь поиска G * можно заметно снизить, если воспользоваться двумя нижепривi еденными гипотезами.

Гипотеза 1. Структура G * , при которой достигается 4, (G * )

мак-

симyм живучести ВС, обеспечивает и 4 (G *)

максимум живучести

подсистем ранга

Гипотеза 2. Структура c минимальным (средним) диаметром относится к G* , т. e. обладает максимальной структурной живучестью.

Справедливость гипотез, высказанных а втором в 1970-x годах, подтверждена результатами статистического моделирования структур ВС.

Ниже оптимальными будем называть структуры G * , имеющие при

заданных порядке N и степени v вершин минимальный диаметр. Создание общего алгоритма синтеза оптимальных структур является сложной задачей. Существуют алгоритмы синтеза для конкретнi 1х классов графов. Для практических целен созданы и пополняются катагiоги оптимальных структур. Пользование каталогами так же просто, как таблицами элементарных функций. Фрагмент каталога оптимальных Дп-графов отражен в табл. 7.1.

Структуры ВС в виде оптимальных Л( V, v, g)-графов показаны на

рис. 7.4. B этих структурах достигнуты минимумы диаметра d (7.1) и сред-

3 02

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