моделювання роботи GRID, яка дозволяє вівчаті Різні алгоритми планування Завдання та опрацьовуваті результати їх роботи.
В основу системи моделювання покладені принципи, за Якими працює планувальнік Moab Workload Manager.
Система містіть реалізацію базового, модіфікованого алгорітмів та має наступні Функції:
- Створення та Редагування структурованих GRID-системи;
- Читання та запис у файл структурованих GRID-системи;
- генерація Завдання для Виконання;
- Вибір параметрів моделювання;
Планування Завдання;
Моделювання роботи GRID-системи;
Збір та відображення статистики.
В Системі реалізовані наступні режими пріорітетізації Завдання:
Створення Черги за принципом FIFO;
- сортуваннях Завдання за вагою обчислень за ЗРОСТАННЯ;
сортуваннях Завдання за вагою обчислень за збивання.
Можливі режими призначення ресурсів:
- FIRSTAVAILABLE - за порядком прісутності в списку ресурсів;
- FASTEST - за потужністю вузлів.
Інтерфейс системи моделювання зображено на малюнку 3.1.
Малюнок 3.1 Зовнішній вигляд системи моделювання
Система реалізована на мові програмування C # та має модульну структуру. Зв язок между модулями зображено на малюнку 3.2.
Проект Складається з трьох модулів.
Модуль Core - ядро ??системи. Воно представляет собою програмних модель GRID, містіть реалізацію базового та модіфікованого алгорітмів и безпосередно відповідає за моделювання роботи GRID.
Рисунок 3.2 Зв язок между модулями програми
Модуль GUI - графічний інтерфейс користувача. Містіть весь функціонал, что необхідній для взаємодії програми з користувачем. Дозволяє корістувачеві створюваті та редагуваті структуру GRID, задаваті Параметри моделювання та отрімуваті статистику.
Модуль Utils містіть утіліті для роботи з файлової системи. Відповідає за Збереження структурованих GRID у файл та читання з нього.
.1 Модуль Core
За структуру GRID системи відповідають класи Node, Line та класи, что є наслідувані від них. Node представляет собою обчислювальний вузол, а Line - лінію зв язку. Ієрархію класу Node можна Побачити на малюнку 3.3. Ієрархію класу Line можна Побачити на малюнку 3.4. Бачимо, что Обидва ціх класи реалізують інтерфейс itimeobserver, Який містіть метод handletimerevent (). Цею інтерфейс необхідній для реалізації шаблоном проектування «Спостерігач».
Малюнок 3.3 Ієрархія класу Node
Малюнок 3.4 Ієрархія класу Line
За помощью цього шаблоном проектування реалізується Механізм дискретного відліку годині: з шкірними зміною таймеру ВСІ про єкти, что реалізують Данії інтерфейс та зареєстровані в таймері, отримуються ПОВІДОМЛЕННЯ про зміну годині та мают можлівість відреагуваті. Наприклад, лінія зв язку может Передат Чергова порцію Даних, а обчислювальний вуз...