Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Параллелизм в программах и вычислениях



В основе архитектуры большинства современных ВМ лежит представление алго­ритма решения задачи в виде программы последовательных вычислений. Базовые архитектурные идеи ВМ, ориентированной на последовательное исполнение ко­манд программы, были сформулированы Джоном фон Нейманом. В условиях по­стоянно возрастающих требований к производительности вычислительной техники все очевидней становятся ограничения классической фон-неймановской архитек­туры, обусловленные исчерпанием всех основных идей ускорения последовачель-ного счета. Дальнейшее развитие вычислительной техники связано с переходом к параллельным вычислениям как в рамках одной ВМ, так и путем создания мно­гопроцессорных систем и сетей, объединяющих большое количество отдельных процессоров или отдельных вычислительных машин. Для такого подхода вместо термина «вычислительная машина» более подходит термин «вычислительная си­стема» (ВС). Отличительной особенностью вычислительных систем является на­личие в них средств, реализующих параллельную обработку, за счет построения параллельных ветвей в вычислениях, что не предусматривалось классической структурой ВМ.

Методы и средства реализации параллелизма зависят от того, на каком уровне он должен обеспечиваться. Обычно различают следующие уровни параллелизма:

· Несколько независимых заданий одновременно выполня­ются на разных процессорах, практически не взаимодействуя друг с другом. Этот уровень реализуется на ВС с множеством процессоров в многозадачном режиме.

· Уровень программ. Части одной задачи выполняются на множестве процессоров. Данный уровень достигается на параллельных ВС.

· Уровень команд. Выполнение команды разделяется на фазы, а фазы несколь­ких последовательных команд могут быть перекрыты за счет конвейеризации. Уровень достижим на ВС с одним процессором.

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

Параллелизм уровня задания

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

В качестве примера рассмотрим вычислительную систему с четырьмя процес­сорами. ВС обрабатывает задания, классифицируемые как малое (S), среднее (М) и большое (L). Для выполнения малых заданий требуется один, средних — два, а больших заданий — четыре процессора. Обработка каждого задания занимает одну условную единицу времени. Первоначально существует такая очередь заданий: SMLSSMLLSMM.

Для этого списка имеем:

Время Выполняемые задания % использования ВС
1 S,M 75
2 L 100
3 s,s, м 100
4 L 100
5 L 100
6 S, М 75
7 М 50

· средний уровень использования ресурсов вычислительной системы равен 83,3%;

· на выполнение всех заданий требуется 7 единиц времени.

Для получения большей степени утилизации ресурсов ВС разрешим заданиям «выплывать» в начало очереди. Тогда можно получить следующую последователь­ность выполнения заданий: SMSLSMSLLMM. Здесь:

Время Выполняемые задания % использования ВС
1 S,M,S 100
2 L 100
3 S, M,S 100
4 L 100
5 L 100
6 M, M 100

• средний процент использования ресурсов ВС составляет 100%;

• на выполнение всех заданий требуется 6 единиц времени.

Параллелизм возникает также, когда у независимых заданий, выполняемых в ВС, имеются несколько фаз, например вычисление, запись в графический бу­фер, В/ВЫВ на диск или ленту, системные вызовы.


Поделиться:



Последнее изменение этой страницы: 2019-04-21; Просмотров: 276; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.008 с.)
Главная | Случайная страница | Обратная связь