Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВВС.docx
Скачиваний:
11
Добавлен:
20.09.2019
Размер:
283.44 Кб
Скачать

Лекция № 3 (15.03.12)

Аппаратурные особенности сильно сказываются на производительности компьютеров.

Применение специальных процессоров позволяет обрабатывать сигналы, производить распознавание речи, анализ изображений и т.п.

Используя особенности конкретных алгоритмов спец.процессоры могут объединять (100 – 1000 – 1000) параллельно работающих устройств.

Примером является быстрое преобразование Фурье.

Параллелилизм на уровне машинных команд.

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

Для реализации этой идеи используются 2 вида процессоров:

  • Супер сколярные процессоры. Здесь параллелилизм заложен в машинном коде аппаратно.

  • Процессоры, которые выдают команды на каждом цикле, определения не одну операцию, а сразу несколько.

Команды процессора состоят из набора полей, каждое из которых отвечает за свою операцию:

  • Работа с памятью

  • С регистрами и т.д.

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

Компьютеры с общей памятью.

Их называют мультипроцессорными системами.

Все процессоры работают с единым адресным пространством. Например, процессор 1 может записать по адресу значение «79», а процессор 2 может считать по этому адресу записанное значение. Т.е. память используется всеми процессорами в равной степени.

К компьютерам с общей памятью относятся все системы symmetric multy processor (SMP). Они используют общую память и спец. ОС. Все процессоры равноправны.

«-» в ходе работы данные могут быть изменены другим процессором.

«+» общей памятью проще управлять.

Параллельные компьютеры с распределенной памятью.

У каждого процессора своя память. Каждый вычислительный узел является полноценным компьютером со своей памятью, устройством в/в и ОС.

Коммутационная среда позволяет обмен данными между процессорами. А это позволяет решать многие задачи (например для параллельного решения сложных задач).

Система с общей шиной.

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

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

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

Основная проблема таких систем в том, что даже небольшое увеличение числа устройств на шине (4-5) очень быстро делают ее узким местом, вызывающим значительные задержки при обменах с памятью. Это приводит к уменьшению производительности в целом.

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

На пересечении линий располагаются точечные переключатели разрешающие/запрещающие передачу информации между процессором и модулями памяти.

Преимущества: возможность одновременной работы процессоров с разными модулями памяти. Если два процессора будут стремиться работать с одним модулем памяти, то один из них будет заблокирован.

Минусы: это большой объем оборудования, т.к. для n процессоров и n модулей требуется n*nэлементарных переключателей.

Альтернативный способ – использование каскадных переключателей. Это делается в Омега-сети.

Здесь 4 коммутатора и 2 каскада. Каждый переключатель может соединить любой из своих двух выходов с любым из своих двух входов.

В общем случае для соединения n-процессоров с n модулями памяти требуется каскадов, по n/2 коммутаторов в каждом, т.е. всего коммутаторов.

Минус: рост задержки т.к. требуется время на коммутацию входа с выходом на каждом каскаде.

Схемы объединения вычислительных узлов.

Линейка

Кольцо. Средняя длина пути 4/6

Звезда

Используется распределение работы между вычислительными узлами по принципу клиент сервер.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]