на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


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


4. Кластеры. Последнее направление, строго говоря, не является самостоятельным, а скорее представляет собой комбинации предыдущих трех. Из нескольких процессоров, традиционных или векторно-конвейерных, и общей для них памяти сформируем вычислительный узел. Если вычислительной мощности полученного узла не достаточно, то объединим несколько узлов высокоскоростными каналами. Подобную архитектуру называют кластерной, и по такому принципу построены CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, последние модели IBM SP2 и другие. Именно это направление является наиболее перспективным в настоящее время.

Два раза в год собираются данные для формирования списка пятисот самых мощных вычислительных установок мира (Top500). Последняя редакция списка вышла в ноябре этого года, согласно которой первое место занимает компьютер Earth-Simulator, а на второй позиции стоит компьютер ASCI Q - AlphaServer от Hewlett-Packard, объединяющий 8192 процессора Sc45.


Если где-то прибудет, то где-то обязательно уменьшится

К сожалению, чудеса в жизни редко случаются. Гигантская производительность параллельных компьютеров и супер-ЭВМ с лихвой компенсируется сложностями их использования. Начнем с самых простых вещей. У вас есть программа и доступ, скажем, к 256-процессорному компьютеру. Что вы ожидаете? Да ясно что: вы вполне законно ожидаете, что программа будет выполняться в 256 раз быстрее, чем на одном процессоре. А вот как раз этого, скорее всего, и не будет.

Предположим, что в вашей программе доля операций, которые нужно выполнять последовательно, равна f, где 0<=f<=1 (при этом доля понимается не по статическому числу строк кода, а по числу операций в процессе выполнения). Крайние случаи в значениях f соответствуют полностью параллельным (f=0) и полностью последовательным (f=1) программам. Так вот, для того, чтобы оценить, какое ускорение S может быть получено на компьютере из p процессоров при данном значении f, можно воспользоваться законом Амдала:

Если вдуматься как следует, то закон, на самом деле, страшный. Предположим, что в вашей программе лишь 10% последовательных операций, т.е. f=0.1 . Что утверждает закон? А он говорит о том, что сколько бы вы процессоров не использовали, ускорения работы программы более, чем в десять раз никак не получите... да и то 10 - это теоретическая верхняя оценка самого лучшего случая, когда никаких других отрицательных факторов нет... :((

Отсюда первый вывод - прежде, чем основательно перепахивать код для перехода на параллельный компьютер (а любой суперкомпьютер, в частности, является таковым) надо основательно подумать: "А не будет ли потом мучительно больно за увиденный результат и стоит ли овчинка выделки?". Если, оценив заложенный в программе алгоритм, вы поняли, что доля последовательных операций велика, то на значительное ускорение рассчитывать явно не приходится и нужно думать о замене отдельных компонент алгоритма.

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

  s = 0

  Do i = 1, n

      s = s + a(i)     

  EndDo                 

По своей природе он строго последователен, так как на i-й итерации цикла требуется результат с (i-1)-й и все итерации выполняются одна за одной. Имеем 100% последовательных операций, а значит и никакого эффекта от использования параллельных компьютеров. Вместе с тем, выход очевиден. Поскольку в большинстве реальных случаев нет существенной разницы, в каком порядке складывать числа, выберем иную схему сложения. Сначала найдем сумму пар соседних элементов: a(1)+a(2), a(3)+a(4), a(5)+a(6) и т.д. Заметим, что при такой схеме все пары можно складывать одновременно! На следующих шагах будем действовать абсолютно аналогично, получив вариант параллельного алгоритма.

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

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

Словом, заставить параллельную вычислительную систему или супер-ЭВМ работать с максимальной эффективностью на конкретной программе - это, прямо скажем, задача не из простых. Да что там 'заставить работать', иногда даже возникающие вокруг суперкомпьютеров вопросы ставят в тупик. Верно ли утверждение: чем мощнее компьютер, тем быстрее на нем можно решить данную задачу. Ответ противоположный ожидаемому. Действительно, это не верно, что можно пояснить простым бытовым примером. Если один землекоп выкопает яму 1м*1м*1м за 1 час, то два таких же землекопа это сделают за 30 мин - в это можно поверить. А за сколько времени эту работу сделают 60 землекопов? Неужели за 1 минуту? Конечно же нет! Начиная с некоторого момента они будут просто мешаться друг другу, не ускоряя, а замедляя процесс. Так же и в компьютерах: если задачка слишком мала, то мы будем дольше заниматься распределением работы, синхронизацией процессов, сборкой результатов и т.п., чем непосредственно полезной работой.

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


Приложение

Первые 25 суперкомпьютеров из списка Top500 (ноябрь 2003):

Ранг

Местоположение
Страна/Год

Компьютер / Процессоры
Производитель

Семейство

компьютеров

Вид установки
Область применения

Rmax
Rpeak

Nmax
nhalf

1

Earth Simulator Center
Japan/2002

Earth-Simulator / 5120
NEC

NEC Vector
SX6

Research

35860
40960

1.0752e+06
266240

2

Los Alamos National Laboratory
United States/2002

ASCI Q - AlphaServer SC45, 1.25 GHz / 8192
HP

HP AlphaServer
Alpha-Server-Cluster

Research

13880
20480

633000
225000

3

Virginia Tech
United States/2003

X
1100 Dual 2.0 GHz Apple G5/Mellanox Infiniband 4X/Cisco GigE / 2200
Self-made

NOW - PowerPC
G5 Cluster

Academic

10280
17600

520000
152000

4

NCSA
United States/2003

Tungsten
PowerEdge 1750, P4 Xeon 3.06 GHz, Myrinet / 2500
Dell

Dell Cluster
PowerEdge 1750, Myrinet

Academic

9819
15300

630000
5

Pacific Northwest National Laboratory
United States/2003

Mpp2
Integrity rx2600 Itanium2 1.5 GHz, Quadrics / 1936
HP

HP Cluster
Integrity rx2600 Itanium2 Cluster

Research

8633
11616

835000
140000

6

Los Alamos National Laboratory
United States/2003

Lightning
Opteron 2 GHz, Myrinet / 2816
Linux Networx

NOW - AMD
NOW Cluster - AMD - Myrinet

Research

8051
11264

761160
109208

7

Lawrence Livermore National Laboratory
United States/2002

MCR Linux Cluster Xeon 2.4 GHz - Quadrics / 2304
Linux Networx

NOW - Intel Pentium
NOW Cluster - Intel Pentium - Quadrics

Research

7634
11060

350000
75000

8

Lawrence Livermore National Laboratory
United States/2000

ASCI White, SP Power3 375 MHz / 8192
IBM

IBM SP
SP Power3 375 MHz high node

Research

7304
12288

640000
9

NERSC/LBNL
United States/2002

Seaborg
SP Power3 375 MHz 16 way / 6656
IBM

IBM SP
SP Power3 375 MHz high node

Research

7304
9984

640000
10

Lawrence Livermore National Laboratory
United States/2003

xSeries Cluster Xeon 2.4 GHz - Quadrics / 1920
IBM

IBM Cluster
xSeries Cluster Xeon - Quadrics

Research

6586
9216

425000
90000

11

National Aerospace Laboratory of Japan
Japan/2002

PRIMEPOWER HPC2500 (1.3 GHz) / 2304
Fujitsu

PRIMEPOWER HPC2500
PRIMEPOWER HPC2500

Research
Aerospace

5406
11980

658800
100080

12

Pittsburgh Supercomputing Center
United States/2001

AlphaServer SC45, 1 GHz / 3016
HP

HP AlphaServer
Alpha-Server-Cluster

Academic

4463
6032

280000
85000

13

NCAR (National Center for Atmospheric Research)
United States/2003

pSeries 690 Turbo 1.3 GHz / 1600
IBM

IBM SP
SP Power4, Colony

Research
Weather and Climate Research

4184
8320

550000
93000

14

Chinese Academy of Science
China/2003

DeepComp 6800, Itanium2 1.3 GHz, QsNet / 1024
Legend

Legend
DeepComp 6800

Academic

4183
5324.8

491488
15

Commissariat a l'Energie Atomique (CEA)
France/2001

AlphaServer SC45, 1 GHz / 2560
HP

HP AlphaServer
Alpha-Server-Cluster

Research

3980
5120

360000
85000

16

HPCx
United Kingdom/2002

pSeries 690 Turbo 1.3GHz / 1280
IBM

IBM SP
SP Power4, Colony

Academic

3406
6656

317000
17

Forecast Systems Laboratory - NOAA
United States/2002

Aspen Systems, Dual Xeon 2.2 GHz - Myrinet2000 / 1536
HPTi

NOW - Intel Pentium
NOW Cluster - Intel Pentium - Myrinet

Research
Weather and Climate Research

3337
6758

285000
75000

18

Naval Oceanographic Office (NAVOCEANO)
United States/2002

pSeries 690 Turbo 1.3GHz / 1184
IBM

IBM SP
SP Power4, Colony

Research
Weather and Climate Research

3160
6156.8

19

Government
United States/2003

Cray X1 / 252
Cray Inc.

Cray X1
Cray X1

Classified

2932.9
3225.6

338688
44288

20

Oak Ridge National Laboratory
United States/2003

Cray X1 / 252
Cray Inc.

Cray X1
Cray X1

Research

2932.9
3225.6

338688
44288

21

Cray Inc.
United States/2003

Cray X1 / 252
Cray Inc.

Cray X1
Cray X1

Vendor

2932.9
3225.6

338688
44288

22

Korea Institute of Science and Technology
Korea, South/2003

xSeries Xeon 2.4 GHz, Myrinet / 1024
IBM

IBM Cluster
xSeries Cluster Xeon - Myrinet

Research

2847
4915.2

230000
23

ECMWF
United Kingdom/2002

pSeries 690 Turbo 1.3GHz / 960
IBM

IBM SP
SP Power4, Colony

Research
Weather and Climate Research

2560
4992

24

ECMWF
United Kingdom/2002

pSeries 690 Turbo 1.3GHz / 960
IBM

IBM SP
SP Power4, Colony

Research
Weather and Climate Research

2560
4992

25

Energy Company
United States/2003

Integrity rx5670-4x256, Itanium2 1.3 GHz, GigE / 1024
HP

HP Cluster
Integrity rx5670 Itanium2 Cluster, GigEthernet

Industry
Geophysics

2556
5324.8

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

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

Вот лишь некоторые области, где возникают задачи подобного рода:

·     Предсказания погоды, климата и глобальных изменений в атмосфере

·     Науки о материалах

·     Построение полупроводниковых приборов

·     Сверхпроводимость

·     Структурная биология

·     Разработка фармацевтических препаратов

·     Генетика человека

·     Квантовая хромодинамика

·     Астрономия

·     Транспортные задачи

·     Гидро- и газодинамика

·     Управляемый термоядерный синтез

·     Эффективность систем сгорания топлива

·     Разведка нефти и газа

·     Вычислительные задачи наук о мировом океане

·     Распознавание и синтез речи

·     Распознавание изображений

Классификация архитектур вычислительных систем (Классификация Флинна)

Классификация базируется на понятии потока, под которым понимается последовательность элементов, команд или данных, обрабатываемая процессором. На основе числа потоков команд и потоков данных Флинн выделяет четыре класса архитектур: SISD,MISD,SIMD,MIMD.

SISD (single instruction stream / single data stream) - одиночный поток команд и одиночный поток данных. К этому классу относятся, прежде всего, классические последовательные машины, или иначе, машины фон-неймановского типа, например, PDP-11 или VAX 11/780. В таких машинах есть только один поток команд, все команды обрабатываются последовательно друг за другом и каждая команда инициирует одну операцию с одним потоком данных. Не имеет значения тот факт, что для увеличения скорости обработки команд и скорости выполнения арифметических операций может применяться конвейерная обработка - как машина CDC 6600 со скалярными функциональными устройствами, так и CDC 7600 с конвейерными попадают в этот класс.

SIMD (single instruction stream / multiple data stream) - одиночный поток команд и множественный поток данных. В архитектурах подобного рода сохраняется один поток команд, включающий, в отличие от предыдущего класса, векторные команды. Это позволяет выполнять одну арифметическую операцию сразу над многими данными - элементами вектора. Способ выполнения векторных операций не оговаривается, поэтому обработка элементов вектора может производится либо процессорной матрицей, как в ILLIAC IV, либо с помощью конвейера, как, например, в машине CRAY-1.

MISD (multiple instruction stream / single data stream) - множественный поток команд и одиночный поток данных. Определение подразумевает наличие в архитектуре многих процессоров, обрабатывающих один и тот же поток данных. Однако ни Флинн, ни другие специалисты в области архитектуры компьютеров до сих пор не смогли представить убедительный пример реально существующей вычислительной системы, построенной на данном принципе. Ряд исследователей относят конвейерные машины к данному классу, однако это не нашло окончательного признания в научном сообществе. Будем считать, что пока данный класс пуст.

MIMD (multiple instruction stream / multiple data stream) - множественный поток команд и множественный поток данных. Этот класс предполагает, что в вычислительной системе есть несколько устройств обработки команд, объединенных в единый комплекс и работающих каждое со своим потоком команд и данных.

Дополнения Ванга и Бриггса к классификации Флинна:

Класс SISD разбивается на два подкласса:

архитектуры с единственным функциональным устройством, например, PDP-11;

архитектуры, имеющие в своем составе несколько функциональных устройств - CDC 6600, CRAY-1, FPS AP-120B, CDC Cyber 205, FACOM VP-200.

В класс SIMD также вводится два подкласса:

архитектуры с пословно-последовательной обработкой информации - ILLIAC IV, PEPE, BSP;

архитектуры с разрядно-последовательной обработкой - STARAN, ICL DAP.

В классе MIMD авторы различают

вычислительные системы со слабой связью между процессорами, к которым они относят все системы с распределенной памятью, например, Cosmic Cube,

и вычислительные системы с сильной связью (системы с общей памятью), куда попадают такие компьютеры, как C.mmp, BBN Butterfly, CRAY Y-MP, Denelcor HEP.


Наиболее распространенные сегодня суперкомпьютеры:

 Cray T90

Производитель Cray Inc., Cray Research.
Класс архитектуры Многопроцессорная векторная система (несколько векторных процессоров работают на общей памяти).
Предшественники CRAY Y-MP C90, CRAY X-MP.
Модели Серия T90 включает модели T94, T916 и T932.
Процессор Системы серии T90 базируются на векторно-конвейерном процессоре Cray Research с пиковой производительностью 2GFlop/s.
Число процессоров Система T932 может включать до 32 векторных процессоров (до 4-х в модели T94, до 16 модели T916), обеспечивая пиковую производительность более 60GFlop/s.
Масштабируемость Возможно объединение нескольких T90 в MPP-системы.
Память Система T932 содержит от 1GB до 8GB (до 1 GB в модели T94 и до 4GB в модели T916) оперативной памяти и обеспечивает скорость обменов с памятью до 800MB/sec.
Системное ПО Используется операционная система UNICOS.

IBM RS/6000 SP

Производитель International Business Machines (IBM), подразделение RS/6000.
Класс архитектуры Масштабируемая массивно-параллельная вычислительная система (MPP).
Узлы Узлы имеют архитектуру рабочих станций RS/6000. Существуют несколько типов SP-узлов, которые комплектуются различными процессорами: PowerPC 604e/332MHz, POWER3/200 и 222 MHz (более ранние системы комплектовались процессорами POWER2). High-узлы на базе POWER3 включают до 8 процессоров и до 16 GB памяти.
Масштабируемость До 512 узлов. Возможно совмещение узлов различых типов. Узлы устанавливаются в стойки (до 16 узлов в каждой).
Коммутатор Узлы связаны между собой высокопроизводительных коммутатором (IBM high-performance switch), который имеет многостадийную структуру и работает с коммутацией пакетов.
Cистемное ПО OC AIX (устанавливается на каждом узле), система пакетной обработки LoadLeveler, параллельная файловая система GPFS, параллельная СУБД INFORMIX-OnLine XPS. Параллельные приложения исполняются под управлением Parallel Operating Environment (POE).

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

Оптимизированная реализация интерфейса MPI, библиотеки параллельных математических подпрограмм - ESSL, OSL.

Cray T3E

Производитель Cray Inc.
Класс архитектуры Масштабируемая массивно-параллельная система, состоит из процессорных элементов (PE).
Предшественники Cray T3D
Модификации T3E-900, T3E-1200, T3E-1350
Процессорный элемент PE состоит из процессора, блока памяти и устройства сопряжения с сетью. Используются процессоры Alpha 21164 (EV5) с тактовой частотой 450 MHz (T3E-900), 600 MHz (T3E-1200), 675 MHz (T3E-1350) пиковая производительность которых составляет 900, 1200, 1350 MFLOP/sec соответственно. Процессорный элемент располагает своей локальной памятью (DRAM) объемом от 256MB до 2GB.
Число процессоров Системы T3E масштабируются до 2048 PE.
Коммутатор Процессорные элементы связаны высокопроизводительной сетью GigaRing с топологией трехмерного тора и двунаправленными каналами. Скорость обменов по сети достигает 500MB/sec в каждом направлении.
Системное ПО Используется операционная система UNICOS/mk.
Средства программирования Поддерживается явное параллельное программирование c помощью пакета Message Passing Toolkit (MPT) - реализации интерфейсов передачи сообщений MPI, MPI-2 и PVM, библиотека Shmem. Для Фортран-программ возможно также неявное распараллеливание в моделях CRAFT и HPF. Среда разработки включает также набор визуальных средств для анализа и отладки параллельных программ.

Список использованной литературы:

1.   Материалы сайта http://www.parallel.ru

2.   Материалы сайта http://www.top500.org

3.   Материалы сайта http://www.osp.ru/archive/56.htm

4.   Материалы сайта http://www.netlib.org/linpack/


Страницы: 1, 2


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.