Реферат: Суперкомпьютеры

МИНИСТЕРСТВООБРАЗОВАНИЯ РФ

ЮЖНО-РОССИЙСКИЙГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ

(Новочеркасский политехнический институт)

          Факультет:         Информационных Технологий иУправления

          Кафедра:             Автоматики и Телемеханики

          Специальность: Управление и информатика в техническихсистемах

РЕФЕРАТ

по информатике

На тему: Суперкомпьютеры

Выполнил студент          I — 1а             Каширин В. В.

Ф.И.О.

Руководитель        ассистент             МалашенкоЛ.И.

Должность, звание                            Ф.И.О.

Консультант        ассистент              МалашенкоЛ.И.

Должность, звание                            Ф.И.О.

К защите                                             Защитапринята с оценкой

«______» ______________2000г.     ____________________________

___________________________      «_____»________________2000г.

            Подпись                                                                ____________________________

                                                                                                                                                   Подпись

Новочеркасск 2000<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">
СОДЕРЖАНИЕ

ВВЕДЕНИЕ                                                                                                3

1 ОСНОВНЫЕ ВИДЫ АРХИТЕКТУРЫ                                                  4

1.1 Архитектура SMP                                                                       4

1.2 Архитектура MPP                                                                       4

2 СУПЕРКОМПЬЮТЕРЫ КОМПАНИИ nCube                                       4

2.1 Основные принципы архитектуры                                             5

a)Распределенная память                                                      5

б)Межпроцессорная сеть                                                      5

в)Высокий уровень интеграции                                            6

2.2 Суперкомпьютер nCube 2                                                          7

2.3 Архитектура процессора nCube                                                 8

а)Система ввода/вывода nCube 2                                          9

2.4 Программное обеспечение                                                         10

2.5 Надежность системы nCube 2                                                    10

3 СЕТЬ КАК СУПЕРКОМПЬЮТЕР                                                         11

3.1 Параллельные программы — главный тормоз                            11

3.2 MPI                                                                                             11

3.3 Реализации MPI                                                                          12

3.4 Средства программирования высокого уровня                        13

3.5 Попытка прогноза                                                                      14

4 ПИМЕРЫ ИСПОЛЬЗОВАНИЯСУПЕРКОМПЬЮЮТЕРОВ                14

4.1 Моделирование построение белка                                             14

4.2 Виртуальная башня                                                                     14

ИСПОЛЬЗУЕМАЯ ЛИТЕРАТУРА                                                           16<span Times New Roman",«serif»; mso-fareast-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">
ВВЕДЕНИЕ

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

В принципе,суперкомпьютер это обычная вычислительная система, позволяющая производитьсложные расчеты за более короткие промежутки времени. О чем собственно иговорит приставка «Супер» (Superв переводе с английского означает: сверх, над). Любая компьютерная системасостоит из трех основных компонентов — центрального процессора, то естьсчетного устройства, блока памяти и вторичной системы хранения информации (кпримеру, в виде дисков или лент). Ключевое значение имеют не только техническиепараметры каждого из этих элементов, но и пропускная способность каналов, связывающихих друг с другом и с терминалами потребителей. Одна из заповедей «Крей рисерч» гласит: «Быстродействие всей системы не превышаетскорости самой медленнодействующей ее части». Важным показателемпроизводительности компьютера является степень его быстродействия. Онаизмеряется так называемыми флопсами — от английскогосокращения, обозначающего количество операций с числами, представленными вформе с плавающей запятой, в секунду. То есть за основу берется подсчет — сколько наиболее сложных расчетов машина может выполнить за один миг.

А зачем вообщенужны суперкомпьютеры? На этот вопрос дает ответ представитель компании «Крей рисерч» Вито Бонджорно:Раздвижение границ человеческого знания всегда опиралось на два краеугольныхкамня, которые не могут, существовать друг без друга, — теорию и опыт. Однакотеперь ученые сталкиваются с тем, что многие испытания стали практическиневозможными — в некоторых случаях из-за своих масштабов, в других — дороговизны или опасности для здоровья и жизни людей. Тут-то и приходят напомощь мощные компьютеры. Позволяя экспериментировать с электронными моделямиреальной действительности, они становятся «третьей опорой» современной науки ипроизводства.

Прошло время,когда создатели суперкомпьютеров стремились обеспечить максимальнуюпроизводительность любой ценой. Специальные процессоры, дорогостоящаясверхбыстрая память, нестандартное периферийное оборудование — все этообходилось заказчикам в круглую сумму. Приобретали суперкомпьютеры либопредприятия ВПК, либо крупные университеты. И те, и другие делали это, какправило, за государственный счет. Окончание «холодной войны» ипоследовавшее за ним сокращение ассигнований на военные и околовоенныенужды нанесли серьезный удар по производителям суперкомпьютеров. Большинство изних были поглощены изготовителями менее производительной, но более доступной иходовой вычислительной техники. Впрочем, у этих слияний были и технологическиепредпосылки — быстродействие серийно выпускаемых микропроцессоров постоянноросло, и производители суперкомпьютеров быстро переориентировались на них, чтопозволило существенно сократить общую стоимость разработки. Основной упор сталделаться на увеличение числа процессоров и повышение степени параллелизмапрограмм.

1ОСНОВНЫЕ ВИДЫ АРХИТЕКТУРЫ

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

1.1 Архитектура SMP

Основноепреимущество SMP — относительная простота программирования. В ситуации, когдавсе процессоры имеют одинаково быстрый доступ к общей памяти, вопрос о том,какой из процессоров какие вычисления будет выполнять, не столь принципиален, изначительная часть вычислительных алгоритмов, разработанных дляпоследовательных компьютеров, может быть ускорена с помощью распараллеливающихи векторизирующих трансляторов. SMP-компьютеры — этонаиболее распространенные сейчас параллельные вычислители, а 2-, 4-хпроцессорные ПК на основе Pentium и Pentium Pro стали уже массовымтоваром. Однако общее число процессоров в SMP-системах, как правило, непревышает 16, а их дальнейшее увеличение не дает выигрыша из-за конфликтов приобращении к памяти. Применение технологий типа UPA, основанной на коммутации пакетоввместо общей шины и локальной кэш-памяти большого объема, способно частичнорешить проблему, подняв число процессоров до 32.

1.2 Архитектура MPP

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

Познакомимсяпоближе с этой архитектурой и одним из представителей этой архитектуры,суперкомпьютером nCube.

2СУПЕРКОМПЬЮТЕРЫ КОМПАНИИ nCube

Одним из пионеров в создании MPP-систем стала основанная в 1983 годукомпания nCube. В 1985 году появился первый ее MPP-компьютер, nCube 1. СистемаnCube 1, в основе которой, как и в основе всех последующих поколенийкомпьютеров nCube, лежит гиперкубическая топологиямежпроцессорных соединений и высокий уровень интеграции на базе технологииVLSI, показала рекордные результаты по абсолютной производительности и всоотношении цена/производительность для научных вычислений.

В 1989 году компания nCube выпустила семейство суперкомпьютеров nCube2. Большие вычислительные возможности, гибкая архитектура и мощноеспециализированное программное обеспечение позволяют применять системы nCube 2в широком диапазоне областей — от сложнейших научных задач до управленияинформацией в бизнесе.

Семейство nCube 2 представляет собой масштабируемую серию систем,производительность которых может достигать 34 GigaFlops.Каждый суперкомпьютер этой серии содержит набор процессоров nCube, соединенныхв гиперкубическую сеть. Наибольшую систему составляют8192 процессора, и ее мощность более чем в 1000 раз превышает мощностьнаименьшей — с 8 процессорами. Возможности памяти и системы ввода/выводавозрастают вместе с ростом процессорной мощности.

Следующая цель компании nCube — разработка нового семейства Mpp-систем,суперкомпьютеров nCube 3. Новое поколение суперкомпьютеров nCube, следуяпринципам высокой интегрируемости и масштабируемости,станет первой промышленно реализованной платформой с производительностью донескольких TFlops, стопроцентно совместимой спредыдущими поколениями систем nCube.

2.1 Основные принципыархитектуры

 a)Распределенная память

В суперкомпьютерах nCube используется архитектура распределеннойпамяти, позволяющая оптимизировать доступ к оперативной памяти, вероятно,наиболее критичному ресурсу вычислительной системы.

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

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

 б) Межпроцессорная сеть

Топология межпроцессорных соединений, обеспечивающая масштабирование добольшого числа процессоров без снижения производительности коммуникаций илиувеличения времени ожидания, является обязательной для MPP-систем.Суперкомпьютеры nCube используют сетевую топологию гиперкуба, которая отвечаетэтим требованиям. Соединения между процессорами nCube-системы образуютмногомерный куб, называемый гиперкубом. По мере добавления процессоровувеличивается размерность гиперкуба. Соединение двух гиперкубов одинаковойразмерности образует гиперкуб следующей размерности. N-мерный гиперкуб содержит2€n процессоров. Двухмерный гиперкуб — это квадрат.Трехмерный гиперкуб образует обычный куб, а четырехмерный гиперкуб представляетсобой куб в кубе. Для семейства суперкомпьютеров nCube 2 гиперкуб максимальнойразмерности 13 содержит 8192 процессора. В системе nCube 3 число процессоровможет достигать 65536 (16-мерный гиперкуб).

Эффективность сетевой топологии измеряется, в частности, числом шаговдля передачи данных между наиболее удаленными процессорами в системе. Длягиперкуба максимальное расстояние (число шагов) между процессорами совпадает сразмерностью куба. Например, в наибольшем 13-мерном семейства nCube 2 сообщениямежду процессорами никогда не проходят более 13 шагов. Для сравнения, в2-мерной конфигурации "mesh" (петля) счислом процессоров, вдвое меньшим числа процессоров в максимальной системеnCube 2, наибольшее расстояние между процессорами составляет 64 шага. Задержкикоммуникаций в такой системе значительно увеличиваются. Таким образом, никакаядругая топология соединения процессоров не может сравниться с гиперкубом поэффективности. Пользователь может удвоить число процессоров в системе, при этомувеличивая длину пути связи между наиболее удаленными процессорами только наодин шаг.

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

 в) Высокий уровень интеграции

Многие преимущества nCube-систем, и, прежде всего высочайшие показатели- надежности и производительности, являются результатом использованиятехнологии VLSI (Very LargeScale Integration — сверхвысокая степень интеграции). В большей степени, чем какие-либо другиефакторы, на надежность компьютера влияет число используемых компонентов.Большее число компонентов неминуемо увеличивает вероятность сбоя системы. Поэтой причине nCube интегрирует все функции процессорного узла на одноVLSI-устройство. VLSI-интеграция также сокращает требуемое число соединений,которые могут оказывать решающее влияние на целостность всей системы.

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

2.2 Суперкомпьютер nCube 2

Суперкомпьютер nCube 2 масштабируется от 8-процессорных моделей домоделей с 8192 процессорами. Архитектура nCube 2 уравновешивает процессорнуюмощность, пропускную способность памяти и пропускную способность системыввода/вывода. Добавление процессоров в систему не влечет за собой появлениеузких мест в пропускной способности памяти или системы ввода/вывода.

Семейство nCube2 включает в себя две серии суперкомпьютеров:

— Серия nCube 2S базируетсяна процессоре nCube 2S с тактовой частотой 25 MHz;предельная производительность 33 MFLOPS — 34 GFLOPS; размер оперативной памяти32 Мб — 32 Гб;

— Серия nCube 2 базируетсяна процессоре nCube 2 с тактовой частотой 20 MHz;предельная производительность 26 MFLOPS — 27 GFLOPS; размер оперативной памяти32 Мб — 32 Гб.

Архитектура суперкомпьютера семейства nCube 2 базируется на гиперкубической сети VLSI — чипов, спаренных с независимымидруг от друга устройствами памяти. Чип, или процессор nCube 2, включает в себя:

— 64-разрядный центральный процессор;

— 64-разрядный модуль вычислений с плавающей точкой;

— удовлетворяющий стандарту IEEE (Institute of Electrical andElectronic Engineers — Институт инженеров по электротехнике и радиоэлектронике) интерфейс управленияпамятью с 39-разрядным путем данных 14 двунаправленных каналов DMA (Direct Memory Access — прямой доступ к памяти)

При тактовой частоте 25 МГц процессор имеет скорость 4.1 MFLOPS длявычислений с плавающей точкой одинарной и 3.0 MFLOPS двойной точности.

Каждый процессор nCube 2 конфигурируется с устройством динамическойпамяти емкостью от 4 до 64 МБайт.

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

Каждый суперкомпьютер nCube 2 содержит компактную сеть процессоров. Наодну процессорную плату nCube 2 может монтироваться до 64 процессоров.Процессорная стойка может содержать 16 плат с общим числом процессоров до 1024.Для построения систем большего размера стойки комбинируются. Использованиенедорогих строительных блоков обеспечивает низкую цену полной компьютернойсистемы в сочетании с феноменально высокой производительностью, достигнутой засчет комбинированной мощности процессорной сети.

Каждый процессор nCube 2 содержит 14 каналов DMA 13 для соединений вгиперкубе и 1 для ввода/вывода. Выделенный канал ввода/вывода уравновешиваетвычислительную производительность процессора с производительностью его системыввода/вывода. По мере добавления процессоров в систему пропускная способностьсистемы ввода/вывода гиперкуба масштабируется вместе с процессорной мощностью ипамятью. В состав процессора nCube 2 входит высокоскоростное устройствомаршрутизации сообщений, которое управляет передачей сообщений междупроцессорами. Устройство маршрутизации обеспечивает прямую передачу сообщенийбез прерывания промежуточных процессоров или необходимости хранения данныхсообщения в их памяти. Сообщения передаются со скоростью 2.75 МБ/сек на каналDMA. Специальные методы маршрутизации автоматически вычисляют кратчайший путьмежду процессорами и предотвращают взаимную блокировку сообщений, освобождаяпользователей от необходимости планировать маршруты. Устройство маршрутизациипередает сообщения настолько быстро, что число проходимых шагов влияет на производительностьгораздо меньше, чем в других компьютерах. Высокая скорость передачи создаетиллюзию, что каждый процессор связан непосредственно с любым другим в сети.Эффективность гиперкубической топологии всовокупности с высокоскоростным устройством маршрутизации создаютвысокопроизводительную систему межпроцессорных соединений с максимальной, посравнению с другими процессорными сетями, скоростью межпроцессорныхкоммуникаций. Суперкомпьютер серии nCube 2 с 8192 процессорами имеет скоростьмежпроцессорной передачи 577 ГБ/сек.

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

2.3 Архитектура процессораnCube

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

На кристалле расположенырегистровый файл и два кэша по 16 КБайт каждый:разделенные кэш команд и кэш данных. Скорость доступа к внутреннему кэшу составляет 1.6 ГБайт/сек, адля большей эффективности обслуживает его специальный конвейер. Доступ к кэшу осуществляется по физическому адресу, чтобы избежатьненужных перемещений данных в случае переключения контекста.

Процессор nCube включает в себя полную поддержку виртуальной памяти. Воснову архитектуры заложено 64-разрядное поле виртуального адреса, хотя внастоящее время реализован 48-разрядный виртуальный адрес, обеспечивающийадресацию 256 ТБайт. Размеры страниц могут иметьпеременные размеры от 256 Байт до 64 МБайт.

а) Система ввода/вывода nCube 2

Высокопроизводительной вычислительной системе должна соответствоватьмощная, быстрая и гибкая система ввода/вывода. В суперкомпьютере nCube 2система ввода/вывода использует тот же самый VLSI- процессор, которыйфункционирует как вычислительный элемент в гиперкубическойсети. Каноны DMA в процессорах системы ввода/вывода используются как путипередачи данных. Наличие выделенных процессоров ввода/вывода позволяетосуществлять параллельную работу вычислительной сети и системы ввода/вывода.

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

Плата ввода/вывода nChannel осуществляетсвязь суперкомпьютера nCube 2 с устройствами вторичного хранения, дисками,магнитными лентами, сетями и другими устройствами. Плата nChannelимеет 16 независимых каналов ввода/вывода, каждый из которых управляетсяпроцессором nCube 2. К каждому каналу подключается модуль ввода/вывода,например, контроллер SCSI. Каждый канал передает данные со скоростью 20 МБ/сек.С помощью каналов платы nChannel система nCube 2соединяется с хост-компьютером, сетью Ethernet, дисководами и накопителями на магнитной ленте, атакже модулями преобразования сигналов и передачи видеообразов.

Плата HIPPI позволяет соединять суперкомпьютер nCube 2 с другимисуперкомпьютерами, запоминающими устройствами и иными системами,поддерживающими интерфейс HIPPI (High Performance Parallel Interface Высокопроизводительный параллельный интерфейс).Плата HIPPI использует 16 процессоров nCube 2 для обработки сетевого трафика,обычно 8 процессоров для управления вводом и 8 для управления выводом. Скоростьпередачи данных достигает 100 МБ/сек.

Графическая подсистема реального времени nVisionобеспечивает интегрированную подсистему графики и ввода/вывода, котораяпозволяет программистам отображать и взаимодействовать с большими объемамиданных в реальном времени. На плате nVision размещены16 процессоров nCube 2, 2 CRT-контроллера, специальный текстовый процессор, 16 МБайт памяти и 2 МБайт буфера.

Компьютер nCube 2 соединяется по сети с управляющим компьютером, скоторого пользователи загружают nCube 2, разрабатывают и запускают параллельныепрограммы, наблюдают за функционированием процессорной сети и системыввода/вывода. Стандартным управляющим компьютером для nCube 2 является рабочаястанция производства компании Silicon Graphics.

2.4 Программное обеспечение

На всех компьютерах семейства nCube 2 устанавливаетсяспециализированная программная среда PSE (Parallel Software Environment), включающаяв себя следующие компоненты:

— операционная система nCX, построенная по микроядерной технологии и выполняющаяся на всех процессорахгиперкуба, она управляет системой ввода/вывода;

— драйвер хост-интерфейса, интерфейс ввода/вывода для соединения суправляющим компьютером; библиотека стандартных UNIX-функций;

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

— утилиты системного администратора;

— подсистема интерактивной (on-line) документации.

Среда PSE обеспечивает согласованный для различных моделей семействаnCube 2 прикладной интерфейс. Программы, разработанные для компьютеров снебольшим числом процессоров, не требуют переделки при переносе на системуnCube 2 большего размера. Операционная среда nCube 2 интегрирована со средойуправляющего компьютера, обеспечивая пользователей возможностью разрабатыватьпрограммы на привычной им платформе. С помощью PSE пользователи могут работатьнезависимо, получая автономный контроль над выполнением своих программ.Множество пользователей могут одновременно выполнять программы.

Среда PSE базируется на nCX — высокооптимизированном, небольшом (до 128 КБ) и быстроммикроядре (microkernel), который обеспечивает сервисоперационной системы на каждом процессоре, как гиперкуба, так и системыввода-вывода. nCX поддерживает управление процессамии управление памятью, многозадачность, интерфейс системных вызовов UNIX System V Release 4, а такжевысокопроизводительную систему передачи сообщений. Другие операционныесредства, такие как драйверы ввода/вывода и сетевые соединения, распределяютсямежду вычислительными узлами и процессорами ввода/вывода. Операционная система nCX обеспечивает единый интерфейс для параллельных программи драйверов ввода/вывода.

На суперкомпьютерах nCube 2 поддерживаются два вида программирования:

SPMD (SingleProgram Multiple Data — Одна программа, Множество данных): в процессорнуюсеть загружается одна программа, каждый экземпляр программы обрабатывает свойсобственный набор данных; процессоры могут обмениваться информацией.

MPMD (MultipleProgram Multiple Data — Множество программ, Множество данных): впроцессорную сеть загружается набор программ, каждый экземпляр каждой программыобрабатывает свои собственные данные; программы могут обмениваться информацией.

2.5 Надежность системы nCube2

Суперкомпьютеры nCube 2 представляют наиболее надежные на сегодняшнийдень системы. Каждый аспект дизайна nCube 2 подразумевает надежность. Например,высокая интеграция — процессорный узел на одном чипе уменьшает числокомпонентов, в которых может произойти сбой. Быстрое, эффективное микроядрообеспечивает все необходимые для приложений функции, не перегружая системуболее сложной, но менее надежной операционной средой.

3 СЕТЬ КАК СУПЕРКОМПЬЮТЕР

Теоретическисуперкомпьютер можно представить как объединение большого количества обычныхкомпьютеров в один, единый блок. Иначе это можно представить, как локальную сеть,имеющую некоторое количество узлов в одном блоке. Следовательно, можно вкачестве суперкомпьютера использовать и любую локальную (и не только локальную)сеть. Начиная с 1992 года по скорости роста производительности сетевоеоборудование обгоняет процессоры. Для многих организаций перспективаиспользования сетей рабочих станций и ПК в качестве суперкомпьютеров весьмазаманчива. Основные достоинства сетей — возможность постепенного расширения имодернизации, а также режим эксплуатации сети днем для обычных нужд разработкии проектирования, а ночью для расчетов. Сети не могут соревноваться по скоростивычисления с суперкомпьютерами-рекордсменами, но они на один-два порядкадешевле, их можно использовать там, где объемы расчетов велики, асуперкомпьютеры экономически не оправданы. Такие сетевые технологии будутспособствовать использованию сетей в качестве параллельных вычислителей. Впервую очередь это Fast Ethernetи Gigabit Ethernet. Далееидут технологии коммутации. И, наконец, новые сетевые протоколы, поддерживающиешироковещание

3.1 Параллельные программы — главный тормоз

Главным препятствием к внедрению практически всех параллельныхархитектур является отсутствие параллельных программ. У унаследованных отпоследовательного мира программ имеется недостаток — большой объем кода,принципиально не допускающий параллельного исполнения. Его нельзя преодолеть засчет усовершенствования техники компиляции. Так, если программа половинувремени занимается действиями, которые требуется совершать строго последовательно,то параллельное выполнение оставшейся половины в предельном случае даст лишьдвукратное ускорение. В результате, хотим мы этого или нет, последовательныевычислительные алгоритмы придется заменять параллельными.

3.2 MPI

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

За последние годы в деле создания ПО для систем с распределеннойпамятью наметился серьезный прогресс. Самым крупным достижением быластандартизация интерфейса передачи сообщений MPI (messagepassing interface).Во-первых, MPI поддерживает несколько режимов передачи данных, важнейшие изкоторых: синхронная передача, не требующая выделения промежуточных буферов дляданных и обеспечивающая надежную передачу данных сколь угодно большого размера,и асинхронная передача, при которой посылающий сообщение процесс не ждет началаприема, что позволяет эффективно передавать короткие сообщения. Во-вторых, MPIпозволяет передавать данные не только от одного процесса к другому, но иподдерживает коллективные операции: широковещательную передачу,разборку-сборку, операции редукции. В-третьих, MPI предусматривает гетерогенныевычисления. Вычислительная система может включать разные процессоры, в томчисле имеющие различные наборы команд и разное представление данных. Если у васимеется суперкомпьютер, то это кажется излишним, но для организаций,эксплуатирующих сети рабочих станций с различными процессорами и версиями Unix, — это находка.

Синтаксис MPI облегчает создание приложений в модели SPMD (single program multiple data) — одна программаработает в разных процессах со своими данными. Одна и та же функция вызываетсяна узле-источнике и узлах-приемниках, а тип выполняемой операции (передача илиприем) определяется с помощью параметра. Такой синтаксис вызовов делаетSPMD-программы существенно компактнее, хотя и труднее для понимания.

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

Поддержка модульного программирования в сочетании с независимостью отаппаратуры дала мощный импульс к созданию библиотек. Одна из самых интересныхразработок — пакет линейной алгебры ScaLAPACK,разработанный группой Дж. Донгарра.

3.3 Реализации MPI

Библиотеки MPI реализованы практически на всех современныхсуперкомпьютерах, к примеру, в университете Коимбра(Португалия) разработали библиотеку MPI для Windows95 (http://pandora.uc.pt/w32mpi), которая особенно интересна для преподавателейи студентов, поскольку при отладке достаточно иметь обычный ПК, а запускпараллельных приложений в сети позволяет получить реальный выигрыш впроизводительности.

Практический опыт показывает, что идеально распараллеливаемые задачи,такие как параллельное умножение матриц, можно решать практически на любыхсетях, и добавление даже относительно слабых вычислительных узлов дает выигрыш.Другие задачи, в частности решение систем линейных уравнений, болеетребовательны к коммуникационному оборудованию и качеству реализации передачисообщений. Именно поэтому тесты для оценки реального быстродействияпараллельных вычислительных систем базируются на параллельных аналогахизвестного пакета Linpack. Так, система линейныхуравнений размером 800х800 решается на четырех компьютерах SunSPARCstation 5, объединенных сетью Ethernet 10 Мбит/c, быстрее, чемна трех; на пяти — приблизительно за то же время, что и на четырех, адобавление шестого компьютера однозначно ухудшает производительностьвычислительной системы. Если вместо Fast Ethernet 10 Мбит/c использовать Fast Ethernet 100 Мбит/с, чтолишь незначительно увеличивает общую стоимость системы, время, затрачиваемое накоммуникацию, уменьшается почти в 10 раз, а для решения данной задачи можнобудет эффективно применять уже десятки рабочих станций.

3.4 Средствапрограммирования высокого уровня

Часто в сетях отдельные компьютер

еще рефераты
Еще работы по компьютерам и переферийным устройствам