2. Параллелизм и конвейеризация вычислений.
1. Параллелизм и конвейеризация вычислений
Параллелизм и конвейеризация имеют одинаковые цели — повышение производительности вычислительных систем, оба подхода предполагают достижение этой цели за счет “размножения” аппаратных средств (избыточности аппаратуры вычислительных систем), однако организация вычислительного процесса в них достаточно различается, чтобы оправдать их сравнение. Приведенная таблица отражает наиболее существенные различия между этими подходами
Параллелизм можно определить как возможность одновременного выполнения разных и математических или служебных операций. Распараллеливание нахождение алгоритма решения задачи, использующего параллелизм и реализация этого алгоритма в ВС.
Параллельные ВС. это многопроцессорные ВС., в которых параллелизм используется для повышения производительности при решении задач за счет одновременного выполнения разных операций на разных процессорах или обрабатывающих устройствах одного процессора.
Проблемы распараллеливания:
Некоторые задачи очень хорошо распараллеливаются (например, многие задачи обработки матриц), некоторые - очень плохо.
Решение вопросов взаимодействия параллельных процессоров (например, обмен с памятью, межпроцессорный обмен, синхронизация и др.)
Возможность реализации выбранного распараллеленного алгоритма на данной параллельной структуре.
Конвейеризация вычислений - разбиение вычислений на последовательные этапы с целью реализации этих этапов на отдельных ступенях конвейера для повышения производительности.
Конвейер - устройство, состоящее из N последовательно соединенных частей
(ступеней конвейера), каждая из которых выполняет очередной шаг вычислений за время t (такт конвейера).
Часто конвейерный режим используют в векторных ВС. Векторные ЭВМ и ВС выполняют не только скалярные операции (над числами), но и операции над векторами (массивами чисел), при этом векторные операции выполняются параллельно для всех элементов вектора, либо - на конвейере.
Выигрыш в производительности достигается за счет сокращения расходов на управление, а также за счет снижения универсальности устройства.
Основные проблемы организации вычислений в системах с перестраиваемой структурой связаны с обеспеченном параллелизма вычислений и распределенного децентрализованного управлении процессами и ресурсами. Эти проблемы разработаны только в первом приближении, и известные способы организации параллельных вычислений в распределенных системах с децентрализованным управлением еще не достигли необходимого уровня универсальности и формализации.
Параллельная обработка задач, т. е. мультипрограммный режим функционирования системы, обеспечиваемся достаточно простыми средствами. После ввода задания в систему модуль, принявший задание, посылает через коммутационное поле запрос на поиск свободного обрабатывающего модуля. Когда свободный модуль найден, ему посылается задание, определяющее имена наборов данных, в которых размещается программа, исходные данные и в которые должны быть помещены результаты вычислений. Из задания и программы модуль получает сведения о ресурсах, необходимых для выполнения задания: емкости операционной памяти, числе процессоров и неразделяемых наборах данных. Модуль закрепляет за собой необходимые ресурсы, и после обеспечения задания требуемыми ресурсами инициируется процесс выполнения задачи. По завершении обработки ресурсы освобождаются и в дальнейшем предоставляются очередным заданиям. Число процессов, реализуемых параллельно, определяется числом модулей, входящих в состав системы, и при наличии очереди заданий производительность системы пропорциональна числу модулей.
Параллельные программы строятся традиционными способами: выделением подзадач и ветвей программы, операций над векторами и матрицами и организацией конвейерной обработки данных. Наиболее просто реализуются вычисления с выделением подзадач н параллельных ветвей. При возникновении ветви в ведущей программе модуль посылает запрос на поиск свободного модуля, в который загружается программа и данные ветви, и ветвь выполняется как самостоятельная задача, по завершении которой в ведущий модуль отсылаются результаты обработки. Параллельные вычисления по конвейерной и матричной схемам организуются за счет создания соответствующих конфигураций связей между модулями – линейных (кольцевых) и матричных структур. Построение таких структур в многомодульных системах, в которых часть модулей занята выполнением ранее созданных задач, является пока нерешенной проблемой. Обычно для матричных вычислений в систему встраивает в качестве специального модуля матричный процессор, обеспечивающий высокопроизводительную обработку блоков данных.
В вычислительной системе с перестраиваемой структурой должно быть реализовано распределенное (децентрализованное) управление ресурсами. Это означает, что в системе не должно быть выделенного модуля (даже многократно зарезервированного), на который возложена задача централизованною управления функционированием системы. Распределенное управление основано на согласованной работе всех модулей системы, каждый из которых реализует одинаковый набор правил управления, обеспечивающий эффективное использование всех ресурсов системы. Распределенное управление повышает надежность системы, поскольку каждый модуль способен реализовать управление ресурсами и процессами, и одновременно повышает производительность системы, так как управляющие решения формируются без затрат времени на сбор информации о состоянии всех элементов системы (а за это время ситуация в системе может существенно измениться).
Конвейеризация вычислений - разбиение вычислений на последовательные этапы с целью реализации этих этапов на отдельных ступенях конвейера для повышения производительности.
Конвейер - устройство, состоящее из N последовательно соединенных частей (ступеней конвейера), каждая из которых выполняет очередной шаг вычислений за время t (такт конвейера). Таким образом, для решения задачи, требующей N шагов, потребуется время, равное t N, однако производительность конвейера может быть достаточно велика, поскольку освобождающиеся ступени могут заполняться новыми данными. В результате на каждом такте конвейер может выдавать очередной результат.
Билет №31
- 2. Вопрос № 2 Cумматор
- Структурная схема эвм
- Виды сумматоров
- Основные характеристики эвм
- 2. Шифратор
- Особенности эвм различных поколений
- Вопрос 1. Основные типы эвм и область их применения.
- Вопрос 2. Структура процессора
- 3 Вопрос)
- Виды информации и способы ее представления в эвм
- 2. Арифметико-логическое устройство
- 3 Вопрос)
- 2.Постоянное запоминающее устройство: назначение, характеристики
- Кодирование звуковой информации
- 2.В состав внутренней памяти входит озу, пзу и кэш-память.
- 1. Системы счисления
- 2. Флэш память
- 2.Динамическая память: назначение, принципы работы.
- 1)Восьмеричная и шестнадцатеричная системы счисления.
- 2Вопрос)
- 2 Устройства ввода: разновидности, принципы работы
- 2.Устройства вывода: разновидности, принципы работы.
- 1.Форматы чисел эвм
- 2. Интерфейсы периферийных устройств.
- 1. Числа с фиксированной и плавающей точкой.
- 2. Внешние интерфейсы компьютера.
- 1. Понятие архитектуры
- 2 . Назначение и структура процессора
- Основные типы архитектур эвм
- 2Вопрос.
- 1. Cisc- архитектуры.
- 2. Типы процессоров.
- 1. Risc- архитектуры.
- 2. Характеристика процессора 8086
- 1. Элементарная функция «и».
- 2. Характеристика процессора Pentium IV.
- 1. Элементарная функция «или»
- 2. Характеристика процессора Core 2 Duo
- 1. Элементарная функция «не»
- 2. Современные процессоры ведущих мировых производителей.
- 1. Основные законы и соотношения алгебры логики.
- 2.Виды прерываний
- 2. Программы – отладчики.
- 1. Регистры процессора.
- 2. Типы вычислительных систем.
- 2. Параллелизм и конвейеризация вычислений.
- 1. Полусумматор
- 2. Sisd и simd системы.
- 1. Четвертьсумматор.
- 2. Misd и mimd системы.