Построение концептуальной имитационной модели
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
ее эффективности, потребовалось точное определение емкостей буферов, достаточных для безотказной работы вычислительного центра. В целях получения достоверных результатов, моделирование улучшенной системы было проведено 1000 раз. В процессе проведения экспериментов емкости буферов были определены: буфер ввода - 7000, буфер обработки и вывода - по 1400 байт.
Моделирование первоначальной системы GPSS производит за доли секунды, а выполнение программы, моделирующей улучшенную систему 1000 раз, производится за 13 секунд. При этом объем кода, моделирующего систему, составил всего 24 строки. Все это раскрывает большие возможности GPSS как системы построения имитационных моделей. Единственным и несущественным упрощением является искусственная дискретизация модельного времени.
Список литературы
1. Советов Б.Я., Яковлев С.А. Моделирование систем. - М.: Высш. шк.,1995.
. Вентцель Е.С. Исследование операций. - М.: Радио и связь, 1972.
Приложения
I Текст программы, моделирующей исходную систему
LENGTHFVARIABLE300+(RN1/1000)#400); длина в байтах
DELAYFVARIABLEP1#60/100; задержка
SIMULATE300, 10; задания поступают через 30010 секунд1,V$LENGTH; параметр 1 - длина заданияBEFORE_INPUT; очередь перед вводом задания в ВЦINPUT; начало ввода заданияBEFORE_INPUT; выход из очереди перед вводомV$DELAY; время ввода зависит от длины заданияINPUT; ввод завершенBEFORE_PROCESSING; очередь перед обработкой задания в ВЦPROCESSING; начало обработки заданияBEFORE_PROCESSING; выход из очереди перед обработкойV$DELAY; время обраб. зависит от длины заданияPROCESSING; обработка завершенаBEFORE_OUTPUT; очередь перед выводом результатовOUTPUT; начало выводаBEFORE_OUTPUT; выход из очереди перед выводомV$DELAY; время вывода зависит от длины заданияOUTPUT; вывод завершен108000; моделирование 30 часов процесса
TERMINATE1
START1
II Текст программы, моделирующей улучшенную систему
LENFVARIABLE(300+(RN1/1000)#400); длина в байтах
DELAYFVARIABLEP1#60/103; задержка
SIMULATE
GENERATE300, 10; задания поступают через 30010 с
ASSIGN1,V$LEN; параметр 1 - длина задания
QUEUEBEFORE_INPUT; очередь перед вводом задания в ВЦ
SEIZEINPUT; начало ввода задания
DEPARTBEFORE_INPUT; выход из очереди перед вводом
ADVANCEV$DELAY; время ввода зависит от длины задания
RELEASEINPUT; ввод завершен
QUEUEBEFORE_PROCESSING; очередь перед обработкой задания в ВЦ
SEIZEPROCESSING; начало обработки задания
DEPARTBEFORE_PROCESSING; выход из очереди перед обработкой
ADVANCEV$DELAY; время обраб. зависит от длины задания
RELEASEPROCESSING; обработка завершена
QUEUEBEFORE_OUTPUT; очередь перед выводом рез. обработки
SEIZEOUTPUT; начало вывода
DEPARTBEFORE_OUTPUT; выход из очереди перед выводом
ADVANCEV$DELAY; время вывода зависит от длины задания
RELEASEOUTPUT; вывод завершен
TERMINATE
GENERATE108000; моделирование 30 часов процесса
TERMINATE1
START1000
III Отчет GPSS № 1
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 108000.000 20 3 0
NAME VALUE
BEFORE_INPUT 10002.000
BEFORE_OUTPUT 10006.000
BEFORE_PROCESSING 10004.000
DELAY 10001.000
INPUT 10003.000
LEN 10000.000
OUTPUT 10007.000
PROCESSING 10005.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 360 0 0
2 ASSIGN 360 0 0
3 QUEUE 360 4 0
4 SEIZE 356 0 0
5 DEPART 356 0 0
6 ADVANCE 356 1 0
7 RELEASE 355 0 0
8 QUEUE 355 1 0
9 SEIZE 354 0 0
10 DEPART 354 0 0
11 ADVANCE 354 1 0
12 RELEASE 353 0 0
13 QUEUE 353 0 0
14 SEIZE 353 0 0
15 DEPART 353 0 0
16 ADVANCE 353 1 0
17 RELEASE 352 0 0
18 TERMINATE 352 0 0
19 GENERATE 1 0 0
20 TERMINATE 1 0 0ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
INPUT 356 0.996 302.149 1 357 0 0 0 4
PROCESSING 354 0.992 302.671 1 355 0 0 0 1
OUTPUT 353 0.988 302.341 1 354 0 0 0 0MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
BEFORE_INPUT 6 4 360 10 2.059 617.676 635.323 0
BEFORE_PROCESSING 2 1 355 13 0.368 111.930 116.185 0
BEFORE_OUTPUT 2 0 353 11 0.373 114.143 117.814 0XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
362 0 108010.000 362 0 1
355 0 108017.920 355 11 12 1 674.000
354 0 108032.800 354 16 17 1 418.400
357 0 108114.160 357 6 7 1 354.000
363 0 216000.000 363 0 19
IV Отчет GPSS № 2
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 108000000.000 20 3 0
NAME VALUE
BEFORE_INPUT 10002.000
BEFORE_OUTPUT 10006.000
BEFORE_PROCESSING 10004.000
DELAY 10001.000
INPUT 10003.000
LEN 10000.000
OUTPUT 10007.000
PROCESSING 10005.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 360000 0 0
2 ASSIGN 360000 0 0
3 QUEUE 360000 0 0
4 SEIZE 360000 0 0
5 DEPART 360000 0 0
6 ADVANCE 360000 1 0
7 RELEASE 359999 0 0
8 QUEUE 359999 0 0
9 SEIZE 359999 0 0
10 DEPART 359999 0 0
11 ADVANCE 359999 1 0
12 RELEASE 359998 0 0
13 QUEUE 359998 0 0
14 SEIZE 359998 0 0
15 DEPART 359998 0 0
16 ADVANCE 359998 1 0
17 RELEASE 359997 0 0
18 TERMINATE 359997 0 0
19 GENERATE 1000 0 0
20 TERMINATE 1000 0 0ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
INPUT 360000 0.971 291.193 1 361000 0 0 0 0
PROCESSING 359999 0.971 291.193 1 360999 0 0 0 0
OUTPUT 359998 0.971 291.193 1 360998 0 0 0 0MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
BEFORE_INPUT 9 0 360000 60476 0.738 221.317 266.003 0
BEFORE_PROCESSING 2 0 359999 49604 0.308 92.385 107.149 0
BEFORE_OUTPUT 2 0 359998 38641 0.331 99.401 111.353 0XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
361001 0 108000010.000 361001 0 1
0 108000027.825 361000 6 7 1 531.600
0 108000125.223 360999 11 12 1 440.400
0 108000275.748 360998 16 17 1 523.200
0 108108000.000 361002 0 19