Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка ЭВМ .doc
Скачиваний:
16
Добавлен:
07.06.2015
Размер:
401.41 Кб
Скачать

Контрольные вопросы

1. На какие классы делятся вычислительные системы по способу организации памяти?

2. Как обеспечивается когерентность памяти в многопроцессорных системах?

3. Что такое протоколы наблюдения?

4. Как влияет на производительность многопроцессорной системы количество процессоров?

5. Как влияет на производительность многопроцессорной системы наличие кэш-памяти и ее емкость?

6. Как влияет на производительность многопроцессорной системы наличие локальной памяти и ее емкость?

7. Как влияет на характеристики многопроцессорной системы количество команд обращения памяти в программе?

8. Как влияет на характеристики многопроцессорной системы время выполнения команд обращения памяти в программе?

9. Какие параметры кэш и оперативной памяти являются оптимальными для исследованной в работе структуры?

10. Какие параметры кэш и локальной памяти являются оптимальными для исследованной в работе структуры?

11. Какие параметры памяти всех трех типов являются оптимальными для исследованной в работе структуры?

12. Какое число процессоров и параметры памяти всех трех типов являются оптимальными для исследованной в работе структуры?

Лабораторная работа ?8 Исследование конфликтов в работе многопроцессорной системы Краткая теория

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

Многопроцессорные вычислительные системы строятся, как правило, на основе одинаковых устройств: процессоров, модулей ОЗУ, ВЗУ и др., - которые работают под управлением общей операционной системы. Центральная часть таких систем состоит из нескольких процессоров и модулей памяти, соединенных сетью связи (как показано на рис. 8.1). В настоящее время разработаны различные структуры сетей связи. В лабораторной работе рассматривается простейший вариант структуры: соединение «каждый с каждым».

Одной из важнейших проблем многопроцессорных систем являются конфликты в центральной части, возникающие при обращении двух и более процессоров к одному модулю памяти. Такое обращение, как известно, может привести к искажению информации в ОЗУ и появлению ошибок в данных. Для их устранения используется семафорный принцип защиты. Процессор, первым обратившийся к памяти, захватывает ее и устанавливает флаг занятости. Запросы всех остальных процессоров ставятся в очередь. Обслуживание очередей осуществляется с использованием известных дисциплин: бесприоритетных (FIFO, LIFO) и приоритетных. С точки зрения системы в целом конфликты приводят к увеличению времени решения задач и снижению производительности и загрузки процессоров за счет ожидания освобождения ресурсов (ОЗУ).

Описание лабораторной установки

Лабораторная работа выполняется на ПЭВМ типа IBM, работающей в среде Windows XP/NT. В ней используется программа имитационного моделирования центральной части многопроцессорной системы, функционирующей в мультипрограммном режиме. Программа составлена на языке Delphi. Она позволяет выполнить следующее:

1. Варьировать количество задач, решаемых системой, от 3 до 10.

2. Изменять для всех задач одновременно или для каждой в отдельности соотношение длительностей этапов счета и обращения к ОЗУ.

3. Задавать различный порядок обращения процессоров к ОЗУ.

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

В модели исследуется система, которая содержит три процессора и три модуля памяти. Это позволяет одновременно обрабатывать три задачи. В модели занятость процессоров обработкой задач представляется закраской синим цветом. При обращении к ОЗУ процессор и память закрашиваются зеленым, а во время ожидания освобождения ОЗУ - красным цветом.

Исполняемый модуль программы моделирования имеет имя Labmp.exe и находится в папке Lab 8. Запуск программы осуществляется традиционным способом. После запуска на экране появляется основное окно, в верхней части которого изображена структура моделируемой системы. При этом имеется возможность задать с помощью соответствующих кнопок параметры модели и режим моделирования. Если запуск модели был осуществлён в тактовом режиме, то устанавливается флажок «Выполнять по тактам». Моделирование начинается после нажатия кнопки «Начать». При этом для выполнения очередного такта нужно нажать кнопку «Такт».

Параметры задач, как отмечалось выше, могут быть заданы для каждой задачи отдельно. Для этого используется кнопка «Характеристики». После ее нажатия появляется диалоговое окно, которое позволяет установить номер задачи и ее параметры. В нижней части этого окна находится поле «Длительность этапа счёта», в котором задается соответствующее значение. Программа позволяет выбрать следующие соотношения длительностей этапов обработки задачи (счёта и обращения к ОЗУ):

? время счёта больше чем время обращения к ОЗУ в 2, 5, 10 раз;

? время счёта и время обращения к ОЗУ равны;

? время счёта меньше времени обращения к ОЗУ в 1.5, 2, 3 раза.

При этом динамически изменяется значение поля «Время обращения к ОЗУ».

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

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

? каждый процессор работает только со своим ОЗУ;

? каждый процессор обращается ко всем ОЗУ в определённом порядке. При этом имеется возможность выбрать один из 6 вариантов такого обслуживания (например, 1, 2, 3, 1, 2, 3,...; или 2, 3, 1, 2, 3, 1, и т.д.), которые предлагаются в диалоговом окне в раскрывающихся списках.

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

? если соответствующий процессор занят, то на диаграмме рисуется столбик синего цвета;

? если он обращается к ОЗУ, то столбик светло зелёный;

? если процессор простаивает, ожидая освобождения ОЗУ, рисуется красный столбик.

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

Программа завершает работу по окончании обслуживания последней задачи из списка.