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

Сча таблиц.

TBj, TCj, TDj

J - № имени таблицы. Если используются символьные имена, то обращаются TB$MAI.

TBj – среднее значение.

TCj – стандартное отклонение.

TDj – число выборок, которое было сделано, т.е. показывает сколько раз использовался блок TABULATE.

Дополнительные режимы использования таблиц.

1) IA (Inter Arrival – интервалы прихода) – режим.

AB

TABLE

IA

...........................

TABULATE

AB

Транзакт приходит в определенный момент времени в блок TABULATE, например ti. Следующий транзакт придет в этот блок в момент времени ti+1. В таблицу занесется значение равное разности этих времен: ti+1- ti.

ti ti+1 t

2) Rt (Rate – интенсивность) – режим.

AD

TABLE

RT,B,C,D,E

B,C,D- см. раньше.

Е – целое число, которое указывает за какое время измеряется интенсивность.

Каждая таблица, использующаяся в RT режиме, имеет счетчик. Сначала значение счетчика равно нулю. В пределах интервала времени, который указывается в операнде Е, например 150, счетчик считает транзакты, приходящие в блок TABULATE. Когда данное время заканчивается , в таблицу заносится значение счетчика на текущий момент времени, после чего счетчик обнуляется, и все повторяется сначала.

3) QTABLE (Queue – очередь) – режим.

имя QTABLE A,B,C,D

А – имя очереди.

B,C.D – см. раньше.

До сих пор мы имели возможность получать статистику о числе транзактов в очереди с помощью двух блоков: QUEUE, DEPART. Когда заканчивалось моделирование, автоматически выводились среднее значение нахождения транзактов в очереди и отклонения от этого значения.

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

Первый:

MARK

3

QUEUE

1

SEIZE

1

TABULATE

TYME2

DEPART

1

Перед тем как поступить в очередь, фиксируется время прихода в очередь в параметр 3. Дальше транзакт поступает в очередь, ждет там некоторое время пока освободится устройство, потом поступает в устройство и сразу же в блок TABULATE, который из текущего времени вычитает время, зафиксированное в третьем параметре.

Второй (используя режим QTABLE):

TYME5

QTABLE

1,B,C,D

QUEUE

1

SEIZE

1

TABULATE

TYME5

Время моделирования.

Буфер

При моделировании какого-либо явления надо ответить на следующие вопросы:

  1. Зачем мы моделируем?

При этом нас может интересовать:

  • Производительность системы.

  • На сколько загружен ЦП.

  • Сколько времени проводит транзакт в очереди.

2. Как долго надо моделировать?

  • В течении конкретного (фиксированного) времени.

  • Сколько времени, понадобится чтобы получить приемлемый результат?

  • Надо прогнать через систему, например, 1000 транзактов.

Возьмем критерий: Время пребывания транзакта в очереди.

Нас интересует: Среднее время пребывания транзакта в очереди.

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

W1- время пребывания 1-го транзакта в очереди.

Wi- время пребывания i-го транзакта в очереди.

Но, такой подход неправильный, т.к. Wi+1 зависит от Wi.

Есть 2 варианта решения данной проблемы:

  1. по Шрайберу.

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

Недостаток метода: Зря гоняем машину.

  1. Хотелось бы научиться определять время моделирования таким образом, чтобы знать, что данное время мы достигнем определенную точность (оговоренную ранее).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]