Этап 1: Эффективная скорость вычислений (R)

┌───────────────────────────────┬────────────────────────────────┐

│ Для вычислительных │ Эффективная скорость │

│ элементов, реализующих: │ вычислений │

├───────────────────────────────┼────────────────────────────────┤

│только ФЗ │1/[3 x (время сложения ФЗ)] │

│ │если операции сложения нет, │

│ │то через умножение: │

│(RФЗ) │1/(время умножения ФЗ) │

│ │если нет ни операции сложения, │

│ │ни операции умножения, то RФЗ │

│ │рассчитывается через самую │

│ │быструю из имеющихся │

│ │арифметических операций: │

│ │1/[3 x (время операции ФЗ)] │

│ │ │

│ │см. примечания X и Z │

│ │ │

│только ПЗ │МАХ {1/(время сложения ПЗ), │

│(RПЗ) │ 1/(время умножения ПЗ)} │

│ │ │

│ │см. примечания X и Y │

│ │ │

│ │ │

│и ФЗ, и ПЗ │вычисляется как RФЗ, так и RПЗ │

│(R) │ │

│Для простых логических │1/[3 x (время логической │

│процессоров, не выполняющих │операции)] │

│указанные арифметические │ │

│операции │здесь время логической операции │

│ │- это время выполнения операции │

│ │"исключающее ИЛИ", а если ее │

│ │нет, то берется самая быстрая │

│ │простая логическая операция │

│ │см. примечания Х и Z │

│ │ │

│Для специализированных │R = R' x ДС/64, │

│логических процессоров, не │где R' - число результатов │

│выполняющих указанные │ в секунду │

│арифметические и логические │ ДС - число битов, над которым │

│операции │ выполняется логическая │

│ │ операция │

│ │ 64 - коэффициент, │

│ │ нормализующий под │

│ │ 64-разрядную операцию │

└───────────────────────────────┴────────────────────────────────┘

Примечание. Каждый ВЭ должен оцениваться независимо

Примечание W. После полного выполнения конвейерной обработки данных в каждом машинном цикле может быть определена скорость обработки вычислительных элементов, способных выполнять одну арифметическую или логическую операцию. Эффективная скорость вычислений (R) для таких ВЭ при конвейерной обработке данных выше, чем без ее использования.

Примечание X. Для вычислительных элементов, которые выполняют многократные арифметические операции за один цикл (например, два сложения за цикл), время решения t вычисляется как:

время цикла

t = -------------------------------------

число арифметических операций в цикле

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

Примечание Y. Если в ВЭ не реализуется ни сложение ПЗ, ни умножение ПЗ, а выполняется деление ПЗ, то

RПЗ = 1/(время деления ПЗ)

Если в ВЭ реализуется обратная величина П3, но не сложение П3, умножение П3 или деление П3, тогда

RПЗ = 1/(время обратной величины ПЗ)

Если нет и деления, то используется эквивалентная операция. Если ни одна из указанных команд не используется, то RПЗ = 0.

Примечание Z. Простая логическая операция - это операция, в которой в одной команде выполняется одно логическое действие не более чем над двумя операндами заданной длины. Сложная логическая операция - это операция, в которой в одной команде выполняются многократные логические действия над двумя или более операндами и выдается один или несколько результатов. Скорости вычислений рассчитываются для всех аппаратно поддерживаемых длин операндов, рассматривая обе последовательные операции (если поддерживаются) и непоследовательные операции, использующие самые короткие операции для каждой длины операнда, с учетом следующего:

1. Последовательные, или операции регистр - регистр. Исключаются чрезвычайно короткие операции, генерируемые для операций на заранее определенном операнде или операндах (например, умножение на 0 или 1). Если операций типа регистр - регистр нет, следует руководствоваться пунктом 2;

2. Самая быстрая операция регистр - память или память - регистр. Если и таких нет, следует руководствоваться пунктом 3;

3. Память - память.

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