- •Саратовский государственный технический университет Микроанализ производительности вычислительных машин
- •Вычислительные машины, системы и сети
- •Определения
- •1. Принципы анализа производительности
- •Способы описания процессов функционирования
- •Способы описания загрузки ресурсов
- •Модели производительности
- •2. Методы и средства измерений и оценки функционирования
- •Трассировочный и выборочный методы измерений
- •Универсальные и специализированные мониторы
- •Программные мониторы
- •Аппаратные мониторы
- •Гибридные мониторы
- •Анализ производительности универсальных вс
- •Техническое и программное обеспечение
- •Требования безопасности труда
- •Методика эксперимента
- •Варианты заданий
- •Вопросы для самопроверки
- •Содержание отчета
- •Литература
- •Микроанализ производительности вычислительных машин
- •Вычислительные машины, системы и сети
Способы описания загрузки ресурсов
Производительность системы непосредственно связана с загрузкой устройств. Загрузка устройства – время, в течение которого устройство занято работой, т. е. не простаивает. Если – длительность рабочих интервалов и Т – время работы системы, то загрузка устройств; на отрезке времени Т.
(1) |
Если номинальное быстродействие устройства равно V операций в секунду, то фактическое быстродействие с учетом простоев устройства из-за недогрузки составляет операций в секунду. Если - среднее число операций, выполняемых устройством при обработке одного задания, то производительность системы, исчисляемая в обрабатываемых за секунду заданиях,
(2) |
Следовательно, загрузка устройства характеризует производительность системы с точностью до коэффициента пропорциональности.
При анализе производительности большую роль играет не только значение, но и структура загрузки – составляющие, из которых складывается значение ρ. Типичная структура представлена на рис. 2.
| |||
| |||
Простой |
|
1 | |
Оперативная обработка | |||
Пакетная обработка | |||
Системные процессы |
Рис. 2. Структура загрузки устройства
В данном случае выделено три класса процессов (видов нагрузки): системные процессы, пакетная и оперативная обработка. Два последних относятся к прикладным процессам. Указанные классы процессов создают загрузку ρс, ρп и ρ0 ,соответственно. Эти значения характеризуют время работы устройства, используемое для реализации соответствующих функций. Сумма равна загрузке устройства, а значение характеризует простой.
Простой η обусловлен двумя факторами. Во-первых, для компенсации пульсаций нагрузки, связанной с оперативной обработкой данных, выделяется резерв, за счет чего обеспечивается приемлемое время ответа при пиковых нагрузках, во-вторых, возможна нехватка других ресурсов, из-за чего рассматриваемое устройство не может быть загружено полностью в рамках данной конфигурации, режима функционирования системы и текущей нагрузки.
Структуру загрузки можно представить более детально, если, например, в составе системных процессов выделить ввод – вывод, пакетную обработку разделить на несколько классов задач и т.д. Структура загрузки всех ресурсов системы дает представление о распределении ресурсов между процессами и о резервах для увеличения производительности и улучшения качества обслуживания пользователей.
Сумма
(3) |
называется загрузкой вычислительной системы.
Если система функционирует в однопрограммном режиме, причем не простаивает из-за отсутствия нагрузки, Р = 1. Если Р > 1, то производительность системы в этом режиме в Р раз выше, чем в однопрограммном. Таким образом, загрузка системы характеризует производительность системы по отношению к производительности однопрограммного режима.
Эффективный способ повышения производительности вычислительных систем – мультипрограммирование, позволяющее совместить во времени работу многих устройств, в результате чего увеличивается загрузка каждого устройства, а следовательно, загрузка и производительность системы. Для анализа степени совмещения, а также для выбора конфигурации и режима обработки используется профиль загрузки системы (диаграммы Ганта).
Профиль загрузки системы строится следующим образом. Пусть – состояние устройства: , если устройство не загружено (простаивает), и , если устройство занято работой. Состояние системы будем характеризовать вектором , составляющие которого – состояния устройств .
Система, содержащая N устройств, может пребывать в 2N состояниях (0, ...,0,0), (0, ...,0,1), (0, ..., 1, 0), .... (1, ,..., 1). Первое из них соответствует простою и последнее – одновременной работе всех устройств. Состояние системы будем нумеровать числами, представляющими десятичные значения двоичных наборов: S0=(0, ..., 0, 0), S1=(0,..., 0, 1), ... ...,SM=(1, ..., 1, 1), где M=2N-1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
0 |
t |
|
0 |
t | ||||||||||||||||
а) б) | ||||||||||||||||||||
Рис. 3. Профиль загрузки системы |
Пусть за время Т система находилась в состояниях на протяжении интервалов соответственно. Значение , характеризует долю времени, в течение которого система находилась в состоянии , а также вероятность этого состояния.
Распределение вероятностей состояний системы наиболее наглядно представляется в графической форме.
Покажем это на примере трех устройств (рис.3). Каждому устройству соответствует ось длиной 1. Оси разделяются на отрезки длиной , соответствующие интервалам времени, на протяжении которых система пребывает в состояниях . Отрезки rm выделяются жирной линией, если в состоянии Sm устройство Rn, n=1, 2, 3, загружено работой. Для устройства R1 такими являются отрезки r4,…,r7 , а для устройства R3– отрезки r1, r3, r5 и r7.
Полученная таким способом диаграмма называется профилем загрузки системы. Из профиля загрузки видна степень совмещения работы разных устройств во времени. В данном случае очевидно, что возможна совместная работа устройств R1 и R2 и одиночная работа устройства R2, а работа устройства R1 в основном совмещается с работой остальных устройств. Суммарная длина отрезков, выделенных на осях R1, R2, R3, характеризует соответственно загрузку устройств.
Наглядность профиля загрузки возрастает, если состояния Sm и соответствующие им отрезки rm размещать в порядке, определяемом кодом Грея. При этом уменьшается число разрывов между отрезками, выделенными жирными линиями. Так, трехразрядный код Грея порождает последовательность кодов 000, 001, 011, 010, 110, 111, 101, 100, которой соответствует последовательность состояний r0,r1, r3, r2, r6, r7, r5, r4. Профиль загрузки системы, построенный на основе кода Грея и эквивалентный рассмотренному выше, изображен на рис. 3, б. Данный профиль содержит только один разрыв между отрезками занятости, в то время как предыдущий – четыре разрыва.
Профиль загрузки системы, отображающий каждое из 2N состояний, где N – число устройств, называется полным. Сложность полного профиля растет как показательная функция числа устройств N. При число отрезков r0,…,rM оказывается большим и профили теряют наглядность. Поэтому для отображения загрузки устройств часто используются неполные профили, в которых представляются лишь наиболее существенные состояния.