Г.Т. Артамонов, О.М. Брехов
Аналитические вероятностные
модели функционирования ЭВМ

М.: Энергия, 1978. 368 с.
УДК 681.3.001.2
ББК 32.97 / А-86


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

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



Краткое оглавление
 
Предисловие
Часть 1. Определение математической модели ЭВМ
1.Модели структур ЭВМ
2.Системы массового обслуживания,
предмет и методы исследования
3.Математическая модель процесса
прохождения команд и программ в машине
Часть 2. Особенности моделей ЭВМ
4.Системы массового обслуживания с блокировкой
5.Система массового обслуживания с потерями заявок
Часть 3. Модели процессов решения задач на ЭВМ
6.Двухфазные модели процессов в системе
память операндов – арифметическо-логическое устройство
7.Многофазные и многоузловые модели
процессов вычислений на ЭВМ
8.Модели систем с многосекционной памятью
9.Модель оптимизации длины программы
Приложение. Алгоритмы решения СМО

для случаев блокировки и потери заявок

Список литературы
Граф моделей ЭВМ, имеющихся в книге



 
ОГЛАВЛЕНИЕ

 
Предисловие3
 
Часть 1. Определение математической модели ЭВМ
1.Модели структур ЭВМ5
1.Определение моделей функционирования вычислительных систем6
2.Формализация функциональной модели вычислительной системы31
2.Системы массового обслуживания, предмет и методы исследования42
1.Потоки заявок43
2.Механизм обслуживания заявок49
3.Параметры обслуживания51
4.Случайные процессы в системах массового обслуживания54
5.Марковские процессы56
6.Марковские процессы. Дифференциальные уравнения состояний65
7.Полумарковские процессы69
8.Вложенные цепи Маркова85
3.Математическая модель процесса
прохождения команд и программ в машине
95
1.Статистическая модель потока команд.
Распределение времени выполнения операций
96
2.Статистическая модель потока команд. Фазы обращения к памяти101
3.Статистическая модель многосекционной памяти103
4.Организация БЗУ111
5.Адресуемое сверхбыстродействующее запоминающее устройство114
6.Виртуальная память117
7.Память магазинного типа121
8.Пути получения составляющих статистической модели потока команд125
9.Формальное определение математической модели
структуры ЭВМ и оценка её производительности
126
 
Часть 2. Особенности моделей ЭВМ
4.Системы массового обслуживания с блокировкой136
1.Общее решение двуузловой двухфазной модели
при конечной ёмкости промежуточного накопителя и с блокировкой
137
2.Дуальная двуузловая модель144
3.Модель E2nEk (EknE2)146
4.Модель MnEk (EknM)169
5.Система массового обслуживания с потерями заявок178
1.Общее решение системы с одним обслуживающим узлом (Ek | G | 1 | n)179
2.Модель E2 | Er | 1 | n184
3.Дуальная модель GI | Ek | 1 | n195
 
Часть 3. Модели процессов решения задач на ЭВМ
6.Двухфазные модели процессов в системе
память операндов – арифметическо-логическое устройство
204
1.Двухфазные модели с произвольными распределениями
времени обслуживания при нулевой ёмкости накопителя
205
2.Влияние накопителя очереди на
скорость выполнения команд линейного участка программы
207
3.Модель оперативная память – процессор
с возможным уничтожением заявок
221
4.Сравнение дисциплин уничтожения заявок
в двухфазной модели с накопителем очереди
234
5.Зависимость скорости обслуживания от
инерционности накопителя очереди и дообслуживания заявок
239
6.Двухфазные модели с многоместными операциями246
7.Распределение регистров между
адресуемой СБЗУ или ВП и накопителем очередей
252
7.Многофазные и многоузловые модели процессов вычислений на ЭВМ256
1.Трёхфазные модели с произвольными распределениями
времён обслуживания и накопителями с нулевой ёмкостью
256
2.Влияние накопителя очереди операндов на
производительность моделей с записью результата
259
3.Трёхфазные модели с опережающей записью268
4.Оценка влияния циклов памяти
считывание – восстановление на скорость выполнения команд
273
5.Влияние обращения
за командными словами на скорость выполнения команд
275
6.Модель системы с внешним обменом289
7.Модель ЭВМ с виртуальной памятью294
8.Модели систем с многосекционной памятью301
1.Взаимодействие в процессе выборки команд и операндов301
2.Сравнение односекционных
статистических эквивалентов многосекционной памяти
307
3.Модель многосекционной памяти,
учитывающая работу её устройства управления
311
4.Уточнение модели многосекционной памяти команд325
5.Две модели многосекционной памяти команд
с последовательным и параллельным опросом секций
332
9.Модель оптимизации длины программы342
1.Определение алгоритма343
2.Определение кода команды346
3.Задача оптимальной интерпретации кода команды348
 
Приложение. Алгоритмы решения СМО

для случаев блокировки и потери заявок

353
Список литературы360
Граф моделей ЭВМ, имеющихся в книге364
 
Содержание
366


 
Предисловие

 

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

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

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

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

Как правило, выбранные структуры проверяются путём моделирования на уже работающих ЭВМ, однако это связано со значительными трудностями для исследователей и затратами машинного времени, что особенно ощутимо при анализе асинхронных машин. Поэтому желательно применение аналитических методов.

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

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

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

Книга состоит из трёх частей.

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

Во второй части исследуются особенности структур ЭВМ на примере двуузловых двухфазных систем массового обслуживания с промежуточным накопителем конечной ёмкости с блокировкой работы узла и с потерями заявок, проводится сравнение систем с блокировкой и с потерями заявок.

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

В конце книги приведён граф моделей ЭВМ, который служит предметным указателем.



 
Глава 1.
Модели структур ЭВМ

 

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

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

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

Для того чтобы сформулировать общую математическую модель ЭВМ, рассмотрим вначале модели функционирования вычислительных машин на конкретных примерах.



 
Глава 2.
Системы массового обслуживания,
предмет и методы исследования

 

Под системой массового обслуживания (СМО) в настоящее время понимают [23, 38] время-логическую систему, представляющую собой единство трёх категорий:
1) входящего потока заявок или требований на обслуживание;
2) параметров обслуживающих приборов или узлов;
3) дисциплины обслуживания заявок, находящихся в системе.

В простейшем случае СМО может состоять из одного обслуживающего прибора, на вход которого поступает единственный поток заявок извне. Заявка, поступившая в прибор, проходит в системе единственную фазу обслуживания, после чего покидает систему. Простейшими дисциплинами обслуживания являются две предельные дисциплины. В первой из них заявка, поступившая на вход системы, теряется, если она застала обслуживающий прибор занятым. Вторая дисциплина предполагает, что на входе обслуживающего прибора имеется накопитель бесконечной ёмкости, в котором образуется очередь заявок, заставших обслуживающий прибор занятым. Для окончательного определения дисциплины обслуживания во втором случае необходимо указать порядок, по которому обслуживающий прибор выбирает из очереди следующую заявку для обслуживания. Для СМО, являющихся моделями ЭВМ, как правило, устанавливается естественный порядок поступления заявок из очереди в обслуживающий прибор: сначала обслуживается заявка, поступившая первой, и т.д.

Первые две категории СМО являются временными категориями. Они описываются регулярными или вероятностными соотношениями, определяющими время между поступлениями заявок в систему и время обслуживания заявки в приборе.

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

Прежде всего остановимся на методах описания временных категорий.



 
Глава 3.
Математическая модель процесса
прохождения команд и программ в машине

 

Получив функциональную модель работы ЭВМ, следует определить её математическую модель, рассматриваемую как систему массового обслуживания.

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

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

Как правило, на этапе проектирования структуры приходится иметь дело с её существенно упрощёнными моделями. Это в свою очередь несколько упрощает решение вопроса о точности модели потока команд.

Правомерно поставить под сомнение саму необходимость исследования упрощённых моделей структуры ЭВМ с упрощёнными статистическими моделями потока команд. Однако простота моделей и изящество решений дают возможность выявить основные зависимости параметров производительности от структурных особенностей машины и характеристик задач, а также формализовать и осмыслить эти зависимости. Так как требования к номенклатуре параметров статистической модели потока команд выдвигаются моделями структуры ЭВМ, то будем их вырабатывать по мере изучения последних.



 
Глава 4.
Системы массового обслуживания с блокировкой

 

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

При такой постановке модели структур ЭВМ можно рассматривать как системы массового обслуживания.

Первое из устройств (узлов) А1 работает в режиме генератора заявок, второе А2 обслуживает заявки, поступающие с выхода первого узла через накопитель (буферное ЗУ).

Возможны две дисциплины работы системы, обусловленные появлением заявки на выходе первого узла А1, когда накопитель полностью заполнен заявками, а именно:

1. Узел А1 прекращает генерировать заявки и хранит уже обслуженную им заявку до тех пор, пока не освободится место в накопителе Б, т.е. пока узел А2 не обслужит свою очередную заявку.

2. Заявка, обслуженная узломА2, теряется, а узел А1 сразу же начинает обслуживать следующую заявку.

При исследовании «внутренней» производительности ЭВМ наиболее типична первая ситуация, хотя, например, исследование функционирования модели структуры «Память на магнитном барабане – оперативная память» в ряде случаев приводит ко второй дисциплине работы.

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

Системы массового обслуживания с потерями заявок при конечной ёмкости накопителя изучались, например, в [8], а также [67] – GI | M | 1 | n и в [70] – M | G | 1 | n (период занятости системы). Здесь приняты модифицированные обозначения Кендалла [8, 36] (п – ёмкость накопителя).

Системы массового обслуживания первого типа (с блокировкой) с нулевой ёмкостью накопителя исследовались в [3] при произвольном виде функций распределения обслуживания заявок узлами (см. гл. 6). При конечной ёмкости накопителя, когда одна из функций распределения произвольна, а другая экспоненциальна, имеется рекуррентное решение [4–6] (см. гл. 2); отметим и [76], по постановке близкую к рассматриваемой модели. Будем обозначать СМО второго типа как F1nF2, где F1 и F2 – функции распределения длительности обслуживания заявок первым и вторым узлами соответственно, а n – ёмкость накопителя заявок между узлами.



 
Глава 5.
Системы массового обслуживания с потерями заявок

 

Предположение по пп. 1–6 § 4-1 определяет первую дисциплину работы системы. Переход ко второй дисциплине осуществляется заменой предположения п. 6 на следующее: если при появлении заявки на выходе узла А1 в накопителе нет ни одного свободного места, то эта заявка теряется и узел А1 начинает сразу же обслуживать следующую заявку. Такие системы, как было указано выше, называются системами массового обслуживания с потерями.

Итак, рассмотрим систему массового обслуживания с потерями заявок с одним обслуживающим узлом А, функция распределения времени обслуживания заявок которого произвольна F(t) (или эрланговская f(t) = γ(γt) k − 1 e− γt ⁄ (k − 1)!), и рекуррентным потоком поступления заявок, длительность интервала между последовательным поступлением заявок подчиняется эрланговскому распределению γ(γt) k − 1 e− γt ⁄ (k − 1)! [или произвольной функции распределения F(t)] и ёмкостью накопителя Б, т.е. в обозначениях Кендалла [36] системы Ek | G | 1 | n (GI | Ek | 1 | n).



 
Глава 6.
Двухфазные модели процессов в системе
память операндов – арифметическо-логическое устройство

 

Простейшими моделями, описывающими процесс обработки информации в системе память – АЛУ (П–А), являются двухфазные модели, примеры которых приведены в гл. 2. Узел П (см. рис. 2-1) в таких моделях является моделью узла памяти, работающего в режиме считывания операндов. Узел А является моделью АЛУ. Двухфазные модели предполагают, что фаза записи в процессе обработки информации отсутствует. Это весьма жёсткое ограничение оправдывается только тогда, когда ЭВМ содержит СБЗУ достаточно большой ёмкости и можно пренебречь малой вероятностью записи промежуточных результатов в стационарном режиме работы машины. Однако двухфазные модели позволяют во многих случаях получить результаты в аналитической форме, удобной для исследования влияния изменения параметров статистических моделей потока команд. Кроме того, порядок изложения от простого к сложному наиболее рационален для понимания существа исследуемого вопроса и сути полученных результатов.

Общий случай двухфазной модели представлен на рис. 6-1. Здесь П – модель узла памяти, генерирующая заявки (первая фаза). Время генерации одной заявки этим узлом τ1 случайное и подчиняется закону распределения F1(t) = P1 > t). Моделью АЛУ служит узел А, закон распределения случайного времени обслуживания заявок этим узлом F2(t). Перед второй фазой обслуживания заявок узлом А заявки образуют очередь в накопителе очередей Б ёмкостью n заявок. Узел А берёт на обслуживание (поглощает) из накопителя очередей i заявок с вероятностью ρi (i = 0, 1, …, l) (см. ρ-распределение, гл. 3).
 
  ┌─────────────┐
  │      ┌──────┤
ν ▼    ρ ▼      │
┌─┴─┐  ┌─┴─┐  ┌─┴─┐
│ П ├─►┤ Б ├─►┤ А │
└───┘  └───┘  └───┘

Рис. 6-1. Общий случай двухфазной модели.

 

Заявка, обслуженная узлом А, покидает систему и при этом с вероятностью ν может потребовать уничтожения заявок, находящихся в накопителе и узле П (модель условного перехода по неугаданному направлению).

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

В последнем случае операнды, находящиеся в накопителе очереди и выбираемые из памяти, исключаются из обслуживания узлом А (заявки уничтожаются).

Описанная модель при общих предположениях о распределениях F1(t) и F2(t) не поддаётся аналитическим методам исследования, изложенным в гл. 2. Поэтому остановимся иа частных случаях, представляющих самостоятельный интерес и дающих возможность оценить эффективность аналитических методов исследования процессов выполнения команд в ЭВМ.



 
Глава 7.
Многофазные и многоузловые модели
процессов вычислений на ЭВМ

 

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

В двухфазных моделях, например, не удаётся учесть влияние записи результата в память и считывания кодов команд на скорость выполнения команд программы. Многофазные и многоузловые модели представляют собой гораздо более сложный объект исследования, чем двухфазные модели. Аналитические результаты для таких моделей получены в весьма частных предположениях.

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



 
Глава 8.
Модели систем с многосекционной памятью

 

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

В связи с этим удобным правилом при аналитическом исследовании этих моделей может стать представление МП в виде односекционного статистического эквивалента. В § 3-3 предложены два таких эквивалента, качество которых будет рассмотрено несколько позже. Однако в некоторых случаях возможно и прямое исследование моделей вычислительных систем с МП.

Там же построена статистическая модель МП, при более детальном изучении структур ЭВМ эта модель требует дополнительного уточнения.



 
Глава 9.
Модель оптимизации длины программы

 

Настоящая глава посвящена исследованию связи числа команд в программе, реализующей алгоритм, с интерпретацией кода команды. Рассмотрим такую команду двухадресной ЭВМ, как, например, сложение. Команда может предполагать следующее: 1) операнды находятся в ячейках ЗУ с адресами, указанными в ней, а результат записывается в сумматор; 2) один операнд находится в сумматоре, а другой – в ячейке ЗУ с адресом, указанным в первом адресе команды, результат же записывается в ячейку с адресом, указанным во втором адресе данной команды.

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