Главная страница
Навигация по странице:

  • Цель: Выполнить имитационное моделирование системы. Исходные данные для выполнения лабораторной работы

  • Теоретическая часть

  • Выполнение работы

  • Изобразим с помощью диаграмм различные зависимости

  • Контрольная. 4 Бочаров. Отчет по лабораторной работе 4 по теме


    Скачать 373.16 Kb.
    НазваниеОтчет по лабораторной работе 4 по теме
    АнкорКонтрольная
    Дата02.09.2022
    Размер373.16 Kb.
    Формат файлаdocx
    Имя файла4 Бочаров.docx
    ТипОтчет
    #659181

    МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

    ФГАОУ ВО «Крымский федеральный университет имени В. И. Вернадского»

    Физико-технический институт

    Кафедра компьютерной инженерии и моделирования
    Отчет по лабораторной работе №4 по теме:

    “Имитационное моделирование систем с устройствами в режимах прерывания и недоступности”

    по дисциплине "Компьютерные системы"

    Выполнил студент 4 курса

    Группы ИВТ-б-з-181(1)

    Бочаров Ю.Е

    Проверила:

    Руденко М.А.

    Симферополь, 2022

    Цель:

    Выполнить имитационное моделирование системы.

    Исходные данные для выполнения лабораторной работы:

    Таблица 1 Исходные данные для проектирования системы



    Таблица 2 Параметры задач, решаемых системой



    Таблица 3 Трудоемкости задач и число обращений к файлам



    Таблица 4 Параметры файлов



    Таблица 5 Необходимые характеристики исследуемой системы




    λ

    Ѳ





    τ

    τ - HDD

    τ - SSD

    АП1

    3.8

    10000*106



    0.182

    0.263

    78.450

    0.653

    АП2

    1.5

    1000*106



    0.018

    0.667

    42.390

    0.352

    ОП1

    0.3

    6000*106



    0.109

    3.333

    34.407

    0.286

    ОП2

    0.8

    7000*106



    0.127

    1.250

    42.665

    0.355

    БП1

    0.6

    1000*106

    6.201

    0.018

    1.667

    51.611

    0.429

    Данные, которые были использованы для заполнения таблицы №5:

    .

    Скорости для нахождения τ(HDD) и τ(SSD) будем использовать следующие: для записи HDD = 0.78 МБ/с, а для SSD = 139 МБ/с, для чтения 0.68 МБ/с и 63.6 МБ/с соответственно.

    При моделировании будем использовать SSD, т.к. скорость существенно выше.

    Теоретическая часть:

    Моделировать систему будем при помощи среды имитационного моделирования GPSS World. GPSS (англ. General Purpose Simulation System — система моделирования общего назначения) — язык моделирования, используемый для имитационного моделирования различных систем, в основном систем массового обслуживания.

    Во время выполнения работы нам необходимо будет создать 5 блоков “GENERATE” для задач с разными приоритетами (АП, ОП и БП) и один блок для запуска системы. Сначала все заявки поступают в очереди Q_1,2…, далее, исходя из приоритета, обрабатываются соответствующими процессорами и через контроллер памяти обращаются к файлам. Статистика будет записываться в таблицы TAB1 - TAB5 для разных классов задач.

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

    GENERATE - Генерирует транзакты через A единиц времени, модифицированных B с задержкой C, D транзактов, с приоритетом E.
    TRANSFER - Изменяет направление движения транзактов согласно режиму А.
    QUEUE - Обеспечивает занятие B единиц в очереди с именем A.
    PREEMPT - Выполняет приоритетную обработку транзакта в устройстве A. 
    DEPART - Обеспечивает освобождение в очереди A B единиц.
    ADVANCE - Задерживает транзакт на время A±B, если B = const, или A´B, если B – функция.
    RETURN - Снимает прерывание с устройства A.
    ENTER - Обеспечивает вхождение транзакта в многоканальное устройство A с занятием B единиц емкости этого устройства.
    ADVANCE - Задерживает транзакт на время A±B, если B = const, или A´B, если B – функция.
    LEAVE - В многоканальном устройстве A освобождает B единиц его емкости.
    TABULATE - Табулирует значения входящих транзактов в таблице A.
    TERMINATE - Удаляет транзакт из модели, уменьшая на величину A значение содержимого счетчика числа завершений


    Рисунок 1 Блок-диаграмма для одного блока кода


    Выполнение работы:

    После расчета всех необходимых характеристик системы можем приступить к ее моделированию.

    Сначала смоделируем работу нашей системы, состоящую из одного процессора CPU и одного накопителя SSD. Все задачи обрабатываются на CPU, все данные записываются на SSD:



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



    Проведём еще улучшение. Добавим по одному CPU и SSD:





    Показатели после последнего улучшения являются для нас приемлемыми.



    Рисунок 2 Пример статистики ТАВ1

    Изобразим с помощью диаграмм различные зависимости:

    Протестируем работу системы с разным количеством CPU (от 1 до 5):



    Рисунок 3

    Использование трех CPU будет самым целесообразным вариантом, т.к. при увеличении количества процессоров возможны незначительные загруженности CPU (невыгодно), а при уменьшении наоборот - сильные загруженности.

    Определим при каком количестве каналов система будет работать без отказов:



    Рисунок 4

    Видим, что трех каналов будет достаточно для безотказной работы системы.

    Теперь проверим нагрузку при разном количестве накопителей:



    Рисунок 5

    Оформим в виде диаграммы время пребывания в очередях транзактов:



    Рисунок 6
    Вывод:

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

    Приложение 1 (листинг программы):

    TAB1 TABLE M1,0,0.1,50

    TAB2 TABLE M1,0,0.1,50

    TAB3 TABLE M1,0,0.1,50

    TAB4 TABLE M1,0,0.1,50

    TAB5 TABLE M1,0,0.1,50
    SSD1 STORAGE 3

    SSD2 STORAGE 3
    ;____________АП1

    GENERATE (Exponential(1,0,0.263))

    TRANSFER 0.5, LABEL1_1

    QUEUE Q_1

    PREEMPT CPU0,PR

    DEPART Q_1

    ADVANCE 0.182,0.01

    RETURN CPU0

    ENTER SSD1

    ADVANCE 0.653,0.1

    LEAVE SSD1

    TABULATE tab1

    TERMINATE
    LABEL1_1 QUEUE Q_2

    PREEMPT CPU1,PR

    DEPART Q_2

    ADVANCE 0.182,0.01

    RETURN CPU1

    ENTER SSD2

    ADVANCE 0.653,0.1

    LEAVE SSD2

    TABULATE tab1

    TERMINATE
    ;____________АП2

    GENERATE (Exponential(1,0,0.667))

    TRANSFER 0.5, LABEL2_1

    QUEUE Q_1

    PREEMPT CPU2,PR

    DEPART Q_1

    ADVANCE (Exponential(1,0,0.018))

    RETURN CPU2

    ENTER SSD2

    ADVANCE 0.352,0.01

    LEAVE SSD2

    TABULATE tab2

    TERMINATE
    LABEL2_1 QUEUE Q_2

    PREEMPT CPU1,PR

    DEPART Q_2

    ADVANCE 0.018,0.01

    RETURN CPU1

    ENTER SSD1

    ADVANCE 0.352,0.01

    LEAVE SSD1

    TABULATE tab2

    TERMINATE
    ;____________ОП1

    GENERATE 3.333,1

    QUEUE Q_3

    PREEMPT CPU2

    DEPART Q_3

    ADVANCE 0.109,0.01

    RETURN CPU2

    ENTER SSD1

    ADVANCE 0.286,0.01

    LEAVE SSD1

    TABULATE tab3

    TERMINATE
    ;____________ОП2

    GENERATE 1.250,0.2

    QUEUE Q_4

    PREEMPT CPU2

    DEPART Q_4

    ADVANCE 0.127,0.01

    RETURN CPU2

    ENTER SSD2

    ADVANCE 0.355,0.1

    LEAVE SSD2

    TABULATE tab4

    TERMINATE
    ;__________БП1

    GENERATE 1.667,0.1

    QUEUE Q_4

    SEIZE CPU2

    DEPART Q_4

    ADVANCE 0.018,0.01

    RELEASE CPU2

    ENTER SSD2

    ADVANCE 0.429,0.1

    LEAVE SSD2

    TABULATE tab5

    TERMINATE
    GENERATE 72000

    TERMINATE 1

    START 1

    Приложение 2 (отчет):

    GPSS World Simulation Report - Untitled Model 1.132.2

    Monday, May 25, 2020 23:54:56
    START TIME END TIME BLOCKS FACILITIES STORAGES

    0.000 36000.000 79 3 2

    NAME VALUE

    CPU0 10008.000

    CPU1 10010.000

    CPU2 10012.000

    LABEL1_1 13.000

    LABEL2_1 35.000

    Q_1 10007.000

    Q_2 10009.000

    Q_3 10013.000

    Q_4 10011.000

    SSD1 10005.000

    SSD2 10006.000

    TAB1 10000.000

    TAB2 10001.000

    TAB3 10002.000

    TAB4 10003.000

    TAB5 10004.000

    LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

    1 GENERATE 136884 0 0

    2 TRANSFER 136884 0 0

    3 QUEUE 68540 0 0

    4 PREEMPT 68540 0 0

    5 DEPART 68540 0 0

    6 ADVANCE 68540 0 0

    7 RETURN 68540 0 0

    8 ENTER 68540 0 0

    9 ADVANCE 68540 2 0

    10 LEAVE 68538 0 0

    11 TABULATE 68538 0 0

    12 TERMINATE 68538 0 0

    LABEL1_1 13 QUEUE 68344 0 0

    14 PREEMPT 68344 0 0

    15 DEPART 68344 0 0

    16 ADVANCE 68344 0 0

    17 RETURN 68344 0 0

    18 ENTER 68344 0 0

    19 ADVANCE 68344 1 0

    20 LEAVE 68343 0 0

    21 TABULATE 68343 0 0

    22 TERMINATE 68343 0 0

    23 GENERATE 54154 0 0

    24 TRANSFER 54154 0 0

    25 QUEUE 27068 0 0

    26 PREEMPT 27068 0 0

    27 DEPART 27068 0 0

    28 ADVANCE 27068 0 0

    29 RETURN 27068 0 0

    30 ENTER 27068 0 0

    31 ADVANCE 27068 0 0

    32 LEAVE 27068 0 0

    33 TABULATE 27068 0 0

    34 TERMINATE 27068 0 0

    LABEL2_1 35 QUEUE 27086 0 0

    36 PREEMPT 27086 0 0

    37 DEPART 27086 0 0

    38 ADVANCE 27086 0 0

    39 RETURN 27086 0 0

    40 ENTER 27086 0 0

    41 ADVANCE 27086 0 0

    42 LEAVE 27086 0 0

    43 TABULATE 27086 0 0

    44 TERMINATE 27086 0 0

    45 GENERATE 10836 0 0

    46 QUEUE 10836 0 0

    47 PREEMPT 10836 0 0

    48 DEPART 10836 0 0

    49 ADVANCE 10836 0 0

    50 RETURN 10836 0 0

    51 ENTER 10836 0 0

    52 ADVANCE 10836 1 0

    53 LEAVE 10835 0 0

    54 TABULATE 10835 0 0

    55 TERMINATE 10835 0 0

    56 GENERATE 28809 0 0

    57 QUEUE 28809 0 0

    58 PREEMPT 28809 0 0

    59 DEPART 28809 0 0

    60 ADVANCE 28809 0 0

    61 RETURN 28809 0 0

    62 ENTER 28809 0 0

    63 ADVANCE 28809 0 0

    64 LEAVE 28809 0 0

    65 TABULATE 28809 0 0

    66 TERMINATE 28809 0 0

    67 GENERATE 21594 0 0

    68 QUEUE 21594 0 0

    69 SEIZE 21594 0 0

    70 DEPART 21594 0 0

    71 ADVANCE 21594 0 0

    72 RELEASE 21594 0 0

    73 ENTER 21594 0 0

    74 ADVANCE 21594 0 0

    75 LEAVE 21594 0 0

    76 TABULATE 21594 0 0

    77 TERMINATE 21594 0 0

    78 GENERATE 1 0 0

    79 TERMINATE 1 0 0
    FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

    CPU0 68540 0.347 0.182 1 0 0 0 0 0

    CPU1 95430 0.359 0.135 1 0 0 0 0 0

    CPU2 88307 0.159 0.065 1 0 0 0 0 0
    QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

    Q_1 7 0 95608 67402 0.100 0.038 0.128 0

    Q_2 9 0 95430 60965 0.131 0.050 0.137 0

    Q_4 2 0 50403 47194 0.006 0.004 0.064 0

    Q_3 1 0 10836 10807 0.000 0.000 0.068 0


    STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

    SSD1 3 0 0 3 106462 1 1.594 0.531 0 0

    SSD2 3 2 0 3 145815 1 2.046 0.682 0 0
    TABLE MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%

    TAB1 0.962 0.215 0

    0.700 - 0.800 24186 17.67

    0.800 - 0.900 44652 50.29

    0.900 - 1.000 29676 71.97

    1.000 - 1.100 13635 81.93

    1.100 - 1.200 8197 87.92

    1.200 - 1.300 5753 92.12

    1.300 - 1.400 3903 94.97

    1.400 - 1.500 2469 96.78

    1.500 - 1.600 1558 97.92

    1.600 - 1.700 1005 98.65

    1.700 - 1.800 682 99.15

    1.800 - 1.900 394 99.44

    1.900 - 2.000 287 99.65

    2.000 - 2.100 165 99.77

    2.100 - 2.200 130 99.86

    2.200 - 2.300 71 99.91

    2.300 - 2.400 56 99.95

    2.400 - 2.500 21 99.97

    2.500 - 2.600 14 99.98

    2.600 - 2.700 10 99.99

    2.700 - 2.800 7 99.99

    2.800 - 2.900 8 100.00

    2.900 - 3.000 0 100.00

    3.000 - 3.100 1 100.00

    3.100 - 3.200 1 100.00

    TAB2 0.486 0.176 0

    0.300 - 0.400 27085 50.01

    0.400 - 0.500 9327 67.24

    0.500 - 0.600 7129 80.40

    0.600 - 0.700 4481 88.68

    0.700 - 0.800 2658 93.58

    0.800 - 0.900 1522 96.40

    0.900 - 1.000 867 98.00

    1.000 - 1.100 454 98.83

    1.100 - 1.200 254 99.30

    1.200 - 1.300 142 99.57

    1.300 - 1.400 98 99.75

    1.400 - 1.500 62 99.86

    1.500 - 1.600 36 99.93

    1.600 - 1.700 16 99.96

    1.700 - 1.800 13 99.98

    1.800 - 1.900 7 99.99

    1.900 - 2.000 2 100.00

    2.000 - 2.100 1 100.00

    TAB3 0.447 0.109 0

    0.300 - 0.400 5616 51.83

    0.400 - 0.500 2836 78.01

    0.500 - 0.600 1389 90.83

    0.600 - 0.700 528 95.70

    0.700 - 0.800 256 98.06

    0.800 - 0.900 130 99.26

    0.900 - 1.000 41 99.64

    1.000 - 1.100 19 99.82

    1.100 - 1.200 13 99.94

    1.200 - 1.300 3 99.96

    1.300 - 1.400 2 99.98

    1.400 - 1.500 1 99.99

    1.500 - 1.600 0 99.99

    1.600 - 1.700 0 99.99

    1.700 - 1.800 0 99.99

    1.800 - 1.900 1 100.00

    TAB4 0.554 0.164 0

    0.300 - 0.400 1767 6.13

    0.400 - 0.500 10642 43.07

    0.500 - 0.600 10302 78.83

    0.600 - 0.700 2440 87.30

    0.700 - 0.800 1484 92.45

    0.800 - 0.900 896 95.56

    0.900 - 1.000 492 97.27

    1.000 - 1.100 284 98.26

    1.100 - 1.200 189 98.91

    1.200 - 1.300 115 99.31

    1.300 - 1.400 73 99.57

    1.400 - 1.500 71 99.81

    1.500 - 1.600 18 99.88

    1.600 - 1.700 18 99.94

    1.700 - 1.800 8 99.97

    1.800 - 1.900 7 99.99

    1.900 - 2.000 2 100.00

    2.000 - 2.100 1 100.00

    TAB5 0.549 0.182 0

    0.300 - 0.400 3265 15.12

    0.400 - 0.500 7441 49.58

    0.500 - 0.600 5418 74.67

    0.600 - 0.700 2051 84.17

    0.700 - 0.800 1367 90.50

    0.800 - 0.900 857 94.47

    0.900 - 1.000 536 96.95

    1.000 - 1.100 272 98.21

    1.100 - 1.200 153 98.92

    1.200 - 1.300 79 99.28

    1.300 - 1.400 65 99.58

    1.400 - 1.500 34 99.74

    1.500 - 1.600 23 99.85

    1.600 - 1.700 19 99.94

    1.700 - 1.800 10 99.98

    1.800 - 1.900 2 99.99

    1.900 - 2.000 2 100.00

    FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

    252282 0 36000.006 252282 0 1

    252277 0 36000.209 252277 0 56

    252253 0 36000.279 252253 52 53

    252276 0 36000.312 252276 9 10

    252279 0 36000.629 252279 9 10

    252281 0 36000.658 252281 19 20

    252280 0 36000.666 252280 0 23

    252278 0 36000.968 252278 0 67

    252283 0 36002.330 252283 0 45

    252284 0 72000.000 252284 0 78


    написать администратору сайта