МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ
"Львівська політехніка"
ДОСЛІДЖЕННЯ ІМІТАЦІЙНИХ СТОХАСТИЧНИХ МЕРЕЖЕВИХ
МОДЕЛЕЙ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ
Методичні вказівки до лабораторної роботи
з курсу "Моделювання систем"
для студентів базового напрямку 6.0804 "Комп’ютерні науки"
Затверджено
на засіданні кафедри АСУ
Протокол ( 5
від 30.10.2003 року
Львів 2003
ДОСЛІДЖЕННЯ ІМІТАЦІЙНИХ СТОХАСТИЧНИХ МЕРЕЖЕВИХ МОДЕЛЕЙ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ
Методичні вказівки до лабораторної роботи
з курсу "Моделювання систем"
для студентів базового напрямку 6.0804
“Комп’ютерні науки" Львів НУ"ЛП", 2003 – 13с.
Укладачі: Кузьмін О.В., к.т.н., доцент, Журавчак Л.Є., магістр.
Відповідальний за випуск: Шпак З.Я.,
к.т.н., доцент.
Рецензент: Різник В.В., д.т.н., професор.
1. Мета. Ознайомлення з методом імітаційного моделювання систем та його застосуванням при досліджені стохастичних мережевих моделей обчислювальних систем.
2. Теоретична частина.
Імітаційне моделювання – це метод, який дозволяє досліджувати поведінку об’єктів будь-якої природи з будь-якою степенню детальності. Цей метод застосовується, як правило, в тих випадках, коли не існує задовільних аналітичних моделей системи, або методів їх розв’язку, або необхідно провести дослідження об’єкта в динаміці. Імітаційна модель відтворює поведінку реального об’єкта у часі шляхом зміни стану моделі у системному часі. Імітаційне моделювання дозволяє досліджувати об’єкти, в яких одночасно функціонують декілька паралельних процесів, що притаманно сучасним обчислювальним системам. Ось чому імітаційне моделювання широко використовується для дослідження функціонування WEB-систем, систем передачі даних, мереж Internet та Intranet, інших систем обробки даних і управління.
В даній лабораторній роботі описується система імітаційного моделювання обчислювальних структур, моделі яких відповідають функціонуванню WEB-систем, серверів ужитків, баз даних, маршрутизаторів, робочих станцій тощо. В основі моделювання покладено представлення структури обчислювальної системи мережею систем масового обслуговування, загальний вид якої представлений на рис.1,
Рис. 1. Модель структури обчислювальної системи.
де: ОП – оперативна пам’ять,
ПР1 – ПРm – процесори,
К1 – Кl –канали вводу-виводу,
ПВ1 – ПВk – пристрої вводу-виводу.
Д1-Дn представляють собою джерела заявок, які ініціюють процеси (завдання) в обчислювальній системі з відповідними параметрами. В якості Дi можуть виступати користувачі, які ініціюють заявки до відповідної служби обчислювальної системи безпосередньо або через LAN чи WAN мережу. Виділяються два типи: джерела, які ініціюють незалежні заявки, і джерела, які ініціюють заявки тільки після завершеня процесу, пов’язаного із обслуговуванням попередньої заявки. Це дає можливість моделювати змішані системи, моделі яких не належать до топології чисто розімкнутого або чисто замкнутого типу.
ОП характеризується розміром та алгоритмом іі розподілу. Розглядаються алгоритми розподілу статичними, динамічними розділами та сторінковий розподіл.
Функціонування ПРi може здійснюватися як за алгоритмом квантування часу, або без квантування, т.т. закріплення процесора за процесом триває до виникнення переривання, пов’язаного з виконанням операцій вводу-виводу.
Моделювання ПВi і Кi полягає у затримці в часі, пов’язаної з пошуком і передачею інформації відповідно. Можливість такого розділення дій при виконанні операцій вводу-виводу обумовлено тим, що час пошуку інформації (або час доступу) на порядок більший за час безпосередньо передачі інформації.
В залежності від типів ПВi час пошуку може визначатися за різними законами розподілу і за різними параметрами. Час передачі інформації визначається за швидкодією Кi та розміром об’єму даних, які передаються за одну операцію вводу-виводу.
Кожний пристрій має свою чергу, де фіксуються запити до нього. Передбачені такі дисципліни обслуговування черг: в порядку поступлення (FIFO-first in first out), в зворотньому порядку (LIFO-last in first out), з відносними пріорітетами (RP-relative priority, коли забороняється переривання обслуговування процеса нижчого пріорітета), з абсолютними пріорітетами (AP-absolute priority, коли переривання дозволяється).
3. Опис середовища виконання.
Для того, щоб почати роботу в середовищі розробленої системи моделювання, неохідно запустити виконавчий файл IMSystem. Після завантаження середовища необхідно провести наступні дії:
вибрати команду меню (або її еквівалент на панелі інструментів) створення нової системи або
вибрати команду завантаження вже існуючого файлу.
В результаті на робочому полі програми з’являється схематичне зображення базової структури системи, яка підлягає моделюванню, в яку користувач може вносити зміни ( рис. 2 ).
Рис. 2. Головне вікно програми.
Основні умовні скорочення наступні:
DZ – джерело заявок,
СPU – блок процесора,
IO – пристрій вводу/виводу,
CAN – канал вводу/виводу,
MEM – оперативна пам’ять.
Користувач може доповнити запропоновану модель структури системи, конфігуруючи її залежно від своїх потреб. Для цього служать наступні команди меню системи або їх еквіваленти на панелі інструментів:
+ DZ – доддати джерело заявок
+ СPU – додати процесор
+ СAN – додати канал вводу/виводу
+ IO – додати пристрій вводу/виводу
Після вибору структури системи слід задати параметри окремих елементів системи, а саме:
Для джерела заявок необхідно задати ( рис. 3. ):
Режим обробки заявок : пакетний, діалоговий, оперативний.
Пріоритет завдань, ініційованих заявками.
Кількість завдань, ініціюємих одним запитом.
Закони розподілу :
інтервалів часу між моментами поступлення заявок,
потрібного об’єму ОП для завдання, ініційованого заявкою,
числа операцій вводу/виводу завдання,
процесорного часу обробки завдання,
кількості даних, які пердаються за одну операцію вводу/виводу,
кількість пристроїв вводу/виводу, необхідних для виконання завдання, та ймовірності їх вибору (сума ймовірностей вибору має бути рівна 1).
Рис. 3. Задання параметрів джерела заявок.
Для оперативної пам’яті задається ( рис. 4. ):
Алгоритм розподілу: фіксованими розділами, динамічними розділами, сторінковий розподіл.
Загальний об’єм.
Дисципліна обслуговування: FIFO, LIFO, пріоритетне обслуговування.
Рис. 4. Задання параметрів ОП.
Для процесора задається ( рис. 5. ):
Чи процесор працює в режимі квантування.
Дисципліна обслуговування.
Розподіл квантів часу (якщо потрібно).
Рис. 5. Задання параметрів процесора.
Для пристрою вводу/виводу задається ( рис. 6. ):
Дисципліну обслуговування.
Закон розподілу часу обслуговування.
Номер підключеного каналу або каналів, до яких підключений пристрій.
Рис. 6. Задання параметрів пристроя вводу/виводу.
Для каналу вводу/виводу задається ( рис 7. ):
Дисципліна обслуговування.
Закон розподілу часу обслуговування.
Рис. 7. Задання параметрів каналу вводу/виводу.
Система моделювання використовує датчики випадкових чисел п’яти законів розподілу для задання параметрів:
Постійний – задається константою.
Рівномірний – задається нижня і верхня границя інтервалу зміні випадкової величини та початкове значення генератора.
Експоненціальний – задається інтенсивність і початкове значення генератора
Нормальний – задається математичне сподівання, середнє квадратичне відхилення та початкове значення генератора.
Пуасонівський – задається математичне сподівання та початкове значення генератора.
Для доступу до параметрів кожного пристроя необхідно зробити подвійний клік лівою клавішею миші на його зображенні. Для задання параметрів режиму функціонування необхідно зробити подвійний клік на вільному полі системи та задати ( рис. 8.):
Час моделювання.
Закон розподілу інтервалів часу між моментами поступлення пакетів заявок (якщо необхідно).
Рис. 8. Задання режиму функціонування системи, яка моделюється.
Після завершення задання системи, яка моделюється, можна зберегти її опис на диску в файлі. Для цього необхідно вибрати команду меню “Зберегти” та вказати місце та ім’я файла в стандартному діалозі.
Після вибору команди “Почати моделювання” на екрані з’являється вікно початку моделювання, де можна :
розпочати моделювання системи,
налаштувати типи кінцевих результуючих гістограм роботи системи.
Після завершення моделювання виводяться таблиці результатів роботи (рис. 9).
1.Пристрої:
’ТИП. ПР' – тип пристроя,
'РЕЖ. ФУНКЦІОНУВАННЯ' – режим функціонування,
'СЕР. ЧАС. ОБСЛУГОВУВАННЯ' – середній час обслуговування,
'КОЕФ.ФРАГ.ПАМ.' – коефіцієнт фрагментації пам’яті.
2.Черги:
‘Д.ОБСЛ.' – дисципліна обслуговування,
'Ч.ВХ.ЧР' – число входжень в чергу,
'Т.МАХ.ОЧ' – максимальний час очікування в черзі,
'ТСР.ОЧ' – середній час очікування в черзі,
'МАХ.ДОВ.Ч' – максимальна довжина черги,
'СР.ДОВ.Ч' – середня довжина черги.
3. Потоки:
'РЕЖ.ОБС' – режим обслуговування,
'ПР.' – пріоритет завдань потоку,
'Ч.З.ПАК' – число завдань в пакеті,
'ЧАСТ.П.З' – частота поступлення завдань,
'ТСР.РП' – загальний середній час обслуговування процесором,
'ТСР.ЧК' – середній час очікування в чергах,
'ТСР.РЕ' – середній час реакції системи на завдання,
'СР.ПАМ' – середній об’єм пам’яті, використаний завданням,
'СР.В/В' – середнє число операцій вводу/виводу на одне завдання.
'Ч.П.З' – число поступивших завдань
Крім цього будуються наступні гістограми (рис. 10):
Розподіл ймовірностей коефіцієнта завантаження ОП: ордината – ймовірність, абсциса – коефіцієнт завантаження.
Гістограма розподілу інтервалів часу безперервної роботи процесора: ордината – ймовірність, абсциса – значення інтервалу безперервної роботи.
Гістограма коефіцієнта завантаження пристроя в часі: назва – пристрій, ордината – значення коефіцієнта завантаження, абсциса – біжучий час моделювання
Рис. 9. Таблиці результатів роботи системи.
Рис. 10. Гістограми роботи елементів системи в часі.
4. Порядок виконання роботи.
На основі виданого викладачем варіанта завдання (додаток 1, додаток 2) створити опис імітаційної моделі обчислювальної системи в середовищі виконання, для чого необхідно:
4.1. На основі топології мережі і моделі обчислювального процеса визначити матрицю ймовірностей переходів Р мережі.
4.2. Визначити інтенсивності обслуговування ПВi:
, ( ), де k- кількість ПВi .
4.3. Прийняти експоненційним закон розподілу часу обслуговування ПВi мережі з обчисленими інтенсивностями і дисципліну обслуговування FIFO, а для Ki прийняти постійний з параметром , де , і дисципліну обслуговування FIFO.
4.4. Прийняти експоненційним закон розподілу інтервалів часу між моментами поступлення заявок в мережу для розімкнутої моделі з інтенсивністю . Для замкнутих моделей замість експоненційного закону задається постійний з параметром 0.0. Режим обслуговування заявок для розімкнутої моделі прийняти оперативний, а для замкнутої моделі – діалоговий.
4.5. На основі матриці ймовірностей переходів визначити ймовірності вибору ПВi при виконанні операції вводу/виводу
, де - ймовірності переходів матриці P, k-кількість ПВi.
4.6. Визначити кількість етапів обчислень
.
4.7. Розподіл кількості операцій вводу/виводу прийняти пуасоновським з середнім значенням, рівним . Закон розподілу кількісті даних, які передаються за одну операцію вводу/виводу, прийняти експоненційним з параметром .
4.8. Закон розподілу, який задає об’єм оперативної пам’яті, потрібний для виконання завдання, прийняти постійним з параметром 3.0, а алгоритм функціонування ОП прийняти динамічним з загальним розміром 256Мб.
4.9. Кількість одночасно поступаючих завдань прийняти рівним одиниці.
4.10. Час моделюваня задати виходячи з того, що отримані оцінки вихідних параметрів повинні бути статистично значимі:
, де .
Прийняти , при .
4.11. Моделювання провести при різних значеннях для розімкнутих моделей і коефіцієнті мультипрограмування M для замкнутих моделей згідно виданого завдання.
4.12. Визначити абсолютні та відносні відхилення для середнього часу виконання завдань між результатами імітаційного моделювання і аналітичними розрахунками, отриманими з виконання попередніх лабораторних робіт, для різних значень і М і звести їх в таблицю.
5. Звіт по лабораторній роботі.
Звіт має включати наступне:
5.1. Завдання до лабораторної роботи.
5.2. Опис імтаційної моделі з визначеними параметрами.
5.3. Графіки залежності часу виконання завдань від та М.
5.4. Таблиця абсолютних та відносних відхилень часу виконання завдань в порівнянні з адекватними аналітичними моделями для різних значень та М.
6. Контрольні питання.
6.1. Яка модель називається імітаційною?
6.2. Що собою представляє модель обчислювальної системи?
6.3. Які складові входять до імітаційної моделі обчислювальної системи?
6.4. Якими параметрами описуються вхідні потоки завдань?
6.5. Які параметри задаються при описі оперативної пам’яті та процесора?
6.6. Які параметри задаються при описі пристроїв вводу/виводу та каналів?
6.8. Що визначає коефіцієнт завантаження?
6.9. Із чого складається час виконання завдань?
6.10. Які вихідні параметри визначаються в результаті моделювання?
6.11. Як визначаються абсолютні та відносні відхилення?
6.12. Якими законами розподілу можуть задаватися вхідні параметри імітаційної моделі?
6.13. Як визначається час моделювання?
7. Література.
1. Советов Б.Я., Яковлев С.А. Моделирование систем: Учебн. Для вузов по спец. АСУ. -М.: Высш. шк., 1985.
Бусленко Н.П. Моделирование сложных систем. -М.:Наука, 1978.
Шеннон Р. Имитационное моделирование систем - искусство и наука.-М.:Мир, 1978.
Клейнен Дж. Статистические методы в имитационном моделировании. / Пер. с англ. Ю.П.Адлера и др. Вып. 1,2.-М.:Статистика. 1978.
Кузьмин А.В., Лукащук Л.А. Пакет прикладных программ для имитационного моделирования вычислительных управляющих комплексов (СИМВУК) // Информационно-измерительные системы и точность в приборостроении. Тезисы докладов.-М.:Изд-во МДНТП. 1982.
The Methodology and Software of Simulation Modeling of Computing Structures. A.Kuzmin, L.Zhuravchak. The Experience of Designing and Application of CAD Systems in Microelectronics. Proceedings of the VIIthInternational Conference CADSM 2003.18-22 February 2003, Lviv-Slavske, Ukraine. pp. 421-423.
Додаток 1. Варіанти моделей обчислюваних систем.
Додаток 2. Варіанти завдань.
Номер варіанта
Кількість с-м мережі Si
К-сть каналів ki в с-мі мережі Si (i=1..N)
Номер завдання
Кількість файлів
Відображення стану вводу-виводу ОП на системи мережі
Імовірності переходів марківскої моделі ОП
Середній час обслуговування каналами систем мережі
Інтервал зміни і крок приро-щення інтен-сивності вхід-ного потоку (0
1
2
3
4
5
6
7
8
9
I
1
2
3
4
5
6
II
1
2
3
4
5
6
III
1
2
3
4
5
IV
1
2
3
4
5
V
1
2
3
4
5
Індивідуальне завдання
Кількість систем мережі – 5.
Кількість каналів в мережі
Кількість файлів в системі – 6.
Відображення стану вводу-виводу ОП на систему мережі
Ймовірності переходів марківської моделі
Середній час обслуговування каналом системи мережі
Інтервал зміни і крок приросту інтенсивності вхідного потоку
Хід роботи
Марківський граф ОП
Матриця переходів
Складаємо систему для знаходження інтенсивності потоків
Розв’язавши систему отримаємо
Визначаємо коефіцієнти передач
Враховуючи, що то