|
||
148 Глава 3. Функциональная организация фон-неймановской ВМ
|
||
|
||
или строкой (одномерным массивом символов), что требует повторяющихся операций выборки и/или записи. Диаграмма отражает также возможность этапов прерывания и косвенной адресации.
Основные показатели вычислительных машин
Использование конкретной вычислительной машины имеет смысл, если ее показатели соответствуют показателям, определяемым требованиями к реализации заданных алгоритмов. В качестве основных показателей ВМ обычно рассматривают: емкость памяти, быстродействие и производительность, стоимость и надежность [25]. В данном учебнике остановимся только на показателях быстродействия и производительности, обычно представляющих основной интерес для пользователей.
Быстродействие
Целесообразно рассматривать два вида быстродействия: номинальное и среднее. Номинальное быстродействие характеризует возможности ВМ при выполнении стандартной операции. В качестве стандартной обычно выбирают короткую операцию сложения. Если обозначить через тсл время сложения, то номинальное быстродействие определится из выражения
|
||
|
||
|
||
|
||
Среднее быстродействие характеризует скорость вычислений при выполнении эталонного алгоритма или некоторого класса алгоритмов. Величина среднего быстродействия зависит как от параметров ВМ, так и от параметров алгоритма и определяется соотношением
где Тэ — время выполнения эталонного алгоритма; Ν— количество операций, содержащихся в эталонном алгоритме.
Обозначим через щ число операций i-ro типа;/ — количество типов операций в алгоритме (г = 1, 2,...,/);tf — время выполнения операции i-ro типа.
Время выполнения эталонного алгоритма рассчитывается по формуле:
(3.1)
Подставив (3.1) в выражение для Уср, получим
|
||
|
||
|
||
|
||
|
||
Разделим числитель и знаменатель в (3.2) на JV:
|
||
|
||
|
||
|
||
Обозначив частоту появления операции г-го типа в (3.3) через
qi = —'-, запишем окончательную формулу для расчета среднего быстродействия:
(3.4)
В выражении (3.4) вектор {Т[, τ2,..., τ,} характеризует систему команд ВМ, а вектор {q\,q2, ···. 4t}' называемый частотным вектором операций, характеризует алгоритм.
Очевидно, что для эффективной реализации алгоритма необходимо стремиться к увеличению Уср.Если Уном главным образом отталкивается от быстродействия элементной базы, то Vcp очень сильно зависит от оптимальности выбора команд ВМ
Формула (3.4) позволяет определить среднее быстродействие машины при реализации одного алгоритма. Рассмотрим более общий случай, когда полный алгоритм состоит из нескольких частных, периодически повторяемых алгоритмов. Среднее быстродействие при решении полной задачи рассчитывается по формуле:
(3.5)
где т — количество частных алгоритмов; β- — частота появления операций/-го частного алгоритма в полном алгоритме; qtj — частота операций г-го типа в_/-м частном алгоритме.
Обозначим через ЛГ- и 7} — количество операций и период повторения/-го частного алгоритма; Tmax=max(Tlt..., Т-, ..., Тт)— период повторения полного алгоритма;
aj=TmiK /Т цикличность включения j-oro частного алгоритма в полном алгоритме. }
|
||
|
||
т
Тогда за время Ттахв ВМ будет выполнено Nmax= ^;Л^операций, а частоту
появления операции ^-го частного алгоритма в полном алгоритме можно определить из выражения
(3.6)
|
||
|
||
|
||
150 Глава 3. Функциональная организация фон-неймановской ВМ
|
||
|
||
Для расчета по формулам (3.5,3.6) необходимо знать параметры ВМ, представленные вектором {τ„τ2> ...,Щ, параметры каждогоj-vo частного алгоритма — вектор {Ч)\Й)Ъ —' %) и параметры полного алгоритма — вектор {β^ β2, ..., β„}.
Производительность ВМ оценивается количеством эталонных алгоритмов, выполняемых в единицу времени:
Производительность при выполнении полного алгоритма оценивается по формуле:
(37)
Производительность является более универсальным показателем, чем среднее быстродействие, поскольку в явном виде зависит от порядка прохождения задач через ВМ.
Критерии эффективности вычислительных машин
Вычислительную машину можно определить множеством показателей, характеризующих отдельные ее свойства. Возникает задача введения меры для оценки степени приспособленности ВМ к выполнению возложенных на нее функций — меры эффективности.
Эффективность определяет степень соответствия ВМ своему назначению. Она измеряется либо количеством затрат, необходимых для получения определенного результата, либо результатом, полученным при определенных затратах. Произвести сравнительный анализ эффективности нескольких ВМ, принять решение на использование конкретной машины позволяет критерий эффективности.
Критерий эффективности — это правило, служащее для сравнительной оценки качества вариантов ВМ. Критерий эффективности можно назвать правилом . предпочтения сравниваемых вариантов.
Строятся критерии эффективности на основе частных показателей эффективности (показателей качества). Способ связи между частными показателями определяет вид критерия эффективности.
Способы построения критериев эффективности
Возможны следующие способы построения критериев из частных показателей.
Вьщеление главного показателя. Из совокупности частных показателей А |,у42, ..., А„ выделяется один, например А „который принимается за главный. На остальные показатели накладываются ограничения:
А=Аюп (i=2, Ъ,...,п), где Aidon — допустимое значение i-ro показателя. Например, если в качестве Л, выбирается производительность, а на показатели надежности Р и стоимо- ^
|
||
|
||
|
||
Критерии эффективности вычислительных машин 151
|
||
|
||
сти Sнакладываются ограничения, то критерий эффективности ВМ принимает вид:
Способ последовательных уступок. Все частные показатели нумеруются в порядке их важности: наиболее существенным считается показатель Л,, а наименее важным — А\. Находится минимальное значение показателя Ах — minA\, (если нужно найти максимум, то достаточно изменить знак показателя).Затем делается «уступка» первому показателю дельта^, и получается ограничение min А, + ААХ.
На втором шаге отыскивается min 2 при ограничении ( < min А, + άΑ%. После этого выбирается «уступка» для 2: min А2 + АА2. На третьем шаге отыскивается min А3 при ограничениях A, <minAx + АЛ,; А2 < min А2 + АА2 и т. д. На последнем шаге ищут rninA,, при ограничениях
AiuminAi + ΔΛ(; β
А2 £ min А2 + йЛ2\
Д,_, £ mm А,., +ДЛ„_,;
Полученный на этом шаге вариант вычислительной машины и значения ее показателей Л,Л2,..., А„ считаются окончательными. Недостатком данного способа (критерия) является неоднозначность выбора ДЛ,·.
Отношение частных показателей. В этом случае критерий эффективности получают в виде:
(3.8)
или в виде:
(3.9)
или в виде:
гдеЛ; (i= 1, 2, ..., п) — частные показатели, для которых желательно увеличение численных значений, a Bj(i - 1, 2,..., т) — частные показатели, численные значения которых нужно уменьшить. В частном случае критерий может быть представлен в виде:
(3.10)
Наиболее популярной формой выражения (3.10) является критерий цены эффективного быстродействия
(3.11)
где S— стоимость, *^ср — среднее быстродействие ВМ. Формула критерия Х4 характеризует аппаратные затраты, приходящиеся на единицу быстродействия. Аддитивная форма. Критерий эффективности имеет вид:
(3.12)
|
||
|
||
|
||
152 Глава 3. Функциональная организация фон-неймановской ВМ
где α,, α2,..., α„ — положительные и отрицательные весовые коэффициенты частных показателей. Положительные коэффициенты ставятся при тех показателях, которые желательно максимизировать, а отрицательные — при тех, которые желательно минимизировать.
Весовые коэффициенты могут быть определены методом экспертных оценок. Обычно они удовлетворяют условиям
(3.13)
Основной недостаток критерия заключается в возможности взаимной компенсации частных показателей.
Мультипликативная форма. Критерий эффективности имеет вид
(3.14)
где, в частном случае, коэффициенты afполагают равными единице.
От мультипликативной формы можно перейти к аддитивной, используя выражение:
(3.15)
Критерий К6 имеет тот же недостаток, что и критерий К5.
Максиминная форма. Критерий эффективности описывается выражением:
(3.16)
Здесь реализована идея равномерного повышения уровня всех показателей за счет максимального «подтягивания» наихудшего из показателей (имеющего минимальное значение).
У максиминного критерия нет того недостатка, который присущ мультипликативному и аддитивному критериям.
Нормализация частных показателей
Частные показатели качества обычно имеют различную физическую природу и различные масштабы измерений, из-за чего их простое сравнение становится практически невозможным. Поэтому появляется задача приведения частных показателей к единому масштабу измерений, то есть их нормализация.
Рассмотрим отдельные способы нормализации.
Использование отклонения частного показателя от максимального.
(3-17)
В данном случае переходят к отклонениям показателей, однако способ не устраняет различия масштабов отклонений.
Использование безразмерной величины А{. '
(3.18)
|
||
|
||
|
||
Контрольные вопросы 153
|
||
|
||
Л, -—i-, (3.19)
Формула (3.18) применяется тогда, когда уменьшение А, приводит к увеличению (улучшению) значения аддитивной формулы критерия. Выражение (3.19) используется, когда к увеличению значения аддитивной формулы критерия приводит увеличение Д.
Учет приоритета частных показателей
Необходимость в учете приоритетов возникает в случае, когда частные показатели имеют различную степень важности.
Приоритет частных показателей задается с помощью ряда приоритета /, вектора приоритета (Ь{, ...,ЬЧ, ...,Ь„) и вектора весовых коэффициентов (ott.o^,..., <х„).
Ряд приоритета представляет собой упорядоченное множество индексов частных показателей 1= (1,2,..., п). Он отражает чисто качественные отношения доминирования показателей, а именно отношения следующего типа: показатель Л, важнее показателя А2, а показатель А2 важнее показателя А3 и т. д.
Элемент bq вектора приоритета показывает, во сколько раз показатель Л?важ-нее показателя Ач+^зд,есъАд— показатель, которому отведен номер q в ряду приоритета). Если Aqm Л9+1имеют одинаковый ранг, то bq —. 1.Для удобства принимают
Компоненты векторов приоритета и весовых коэффициентов связаны между собой следующим отношением
Зависимость, позволяющая по известным значениям 6, определить величину aq, имеет вид:
(3.20)
Знание весовых коэффициентов позволяет учесть приоритет частных показателей.
Контрольные вопросы
1. Какую функцию выполняет счетчик команд и какой должна быть его разрядность?
2. Какое из полей регистра команд должно быть заполнено в первую очередь?
3. Какой адрес должен быть занесен в указатель стека при его инициализации?
4. Какими средствами компенсируется различие в быстродействии процессора и основной памяти?
|
||
|
||