Lectures / 23
.pdfОрганизация ЭВМ и систем
Лекция 23
Высокопроизводительные вычислительные системы
Развитие компьютерных технологий |
|||
Мэйн- Мини-ЭВМ |
ПК |
|
|
фреймы |
|
|
|
Мини-ЭВМ |
ПК |
Сетевые |
|
|
|
вычисления |
|
1970 |
1980 |
1995 |
2005 |
Уровни параллелизма
Уровень заданий. Несколько независимых заданий одновременно выполняются на разных процессорах. ВС с множеством процессоров в многозадачном режиме.
Уровень программ. Части одной задачи выполняются на множестве процессоров. Параллельные ВС.
Уровень команд. Выполнение команды разделяется на фазы, фазы нескольких последовательных команд могут быть перекрыты за счет конвейеризации. ВС с одним процессором.
Степени гранулярности
Крупнозернистый параллелизм (coarse grained): вычисления независимы, редкий обмен информацией. Единицы распараллеливания - независимые программы. Обеспечивается ОС.
Среднезернистый параллелизм (medium grained): единицы распараллеливания - процедуры. Организуется программистом или компилятором.
Мелкозернистый параллелизм (fine graned): каждое параллельное вычисление состоит из десятка команд. Единицы распараллеливанияэлементы выражения или отдельные итерации цикла с небольшими зависимостями по данным. Равенство интенсивности вычислений и обмена данными. Обеспечивается распараллеливающим (векторизующим) компилятором.
Метрики параллельных вычислений
•Степень параллелизма D(t) (DOP, Degree Of Parallelism) - число процессоров, одновременно участвующих в выполнении программы в каждый момент времени t.
•Ускорение (speedup) - отношение времени, требуемого для выполнения задачи на одном процессоре, ко времени параллельного вычисления на n процессорах:
S(n) = T(1)/T(n)
|
Закон Амдала |
fTs |
Ts |
(1-f)Ts |
|
Последова- |
Распараллеливаемая часть |
тельная часть |
... |
|
|
1 процессор |
|
n процессоров |
|
|
|
|
|
... |
|
|
|
|
|
|
Tp= f × |
Ts + |
(1 - f) × |
Ts |
|
|
n |
|
|||
(1-f)Ts/n |
|
T |
|
n |
|
|
|
s |
|
|
|
Tp |
S = |
Tp |
= 1 + (n -1) × f |
Зависимость ускорения от доли |
|||||
последовательных вычислений |
|||||
S |
|
|
|
|
|
20 |
|
|
|
f=0% |
|
16 |
|
|
|
|
|
12 |
|
|
|
|
|
|
|
|
|
f=5% |
|
8 |
|
|
|
f=10% |
|
|
|
|
|
||
4 |
|
|
|
f=20% |
|
4 |
8 |
12 |
16 |
20 |
n |
|
Зависимость ускорения от
числа процессоров
S
20
n=256
16
12
8
4
n=16
f
0.2 |
0.4 |
0.6 |
0.8 |
1.0 |
Классификация ВС по Флинну
Одиночный поток данных |
Множественный поток данных |
Одиночный |
SISD |
SIMD |
поток команд |
||
Множественный |
MISD |
MIMD |
поток команд |
|
|
Архитектура SISD (обычный компьютер)
|
Команды |
|
Входные данные |
Процессор |
Выходные данные |
|
Процессор |
ÎСкорость ограничена скоростью
передачи данных внутри компьютера.
ПК, Macintosh, Рабочие станции