Степень и уровни параллелизма

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

1) Низкая степень : от 2 до 10 процессоров.

2) Средняя степень : от 10 до 100 процессоров.

3) Высокая степень : от 100 до 104 процессоров.

4) Сверхвысокая степень : от 104 до 106 процессоров.

 
 

Графическое представление параметра D(t) как функции времени называют профилем параллелизма программы. На рис.1.3 показан типичный профиль параллелизма.

В прикладных программах имеется широкий диапазон потенциального параллелизма. В вычислительно интенсивных программах в каждом цикле параллельно могут выполнятся от 500 до 3500 арифметических операций, если для этого имеется существующая вычислительная среда. Однако даже правильно спроектированный суперскалярный процессор способен поддерживать от 2 до 5,8 команды за цикл. Такое падение связано в первую очередь с коммуникационными и системными издержками.

Более сильное влияние на производительность вычислительных средств, чем степень параллелизма, оказывает уровень параллелизма.

Рассматривают алгоритмический и схемный уровни параллелизма.

Выделяют следующие алгоритмические уровни параллелизма:

1. Уровень заданий:

а) между заданиями;

б) между фазами заданий.

2. Программный уровень:

а) между частями программы;

б) в пределах циклов.

3. Командный уровень (между фазами выполнения команд).

4. Арифметический и разрядный уровень:

а) между элементами векторной операции;

б) внутри логических схем АЛУ.

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

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

Параллельная обработка может быть реализована на следующих схемных уровнях:

1. На уровне логических вентилей и элементов памяти (рис.1.4).

2. Уровень логических схем и простых автоматов с памятью (рис.1.5).

3. Уровень регистров и интегральных схем памяти (рис.1.6).

4. Уровень элементарных микропроцессоров (рис.1.7).

5. Уровень макропроцессоров, реализующих крупные операции (рис.1.8).

6. Уровень вычислительных машин, процессоров и программ (рис.1.9).