Магістр ДонНТУ Усачов Олексій Олександрович

Усачов Олексій Олександрович
Факультет обчислювальної техниіки та інформатики
Кафедра електронних обчислювальних машин
Тема випускної роботи:

"Розробка та дослідження програмних засобів для імітаційного моделювання в GRID середовищі"


Научний керівник: Вороной С.М.
ENG RUS ДонНТУ Портал магістров 
  Про себе

Реферат на тему випускної роботи

Актуальність роботи

Не дивлячись на вже існуючі засоби створення Грід інфраструктур, існує ряд важливих наукових завдань, без вирішення яких неможливе використання Грід технологій в науці. Одним з таких завдань є ефективне управління ресурсами в розподіленому середовищі. Відсутність мінімальних за витратами алгоритмів моделювання в часі при імітації моделі значно знижує ефективність використання Грід інфраструктури. І тому, сьогодні актуальним завданням є дослідження алгоритмів в цій області.

Мета роботи

Метою роботи є створення програмних засобів системи розподіленого імітаційного моделювання в грід мережі, що реалізують розподіл завдань між клієнтами системи моделювання, керування моделюванням на основі обробки подій, дослідження і аналіз ефективності роботи системи. Розробка системи розподіленого імітаційного моделювання, за допомогою якої клієнти можуть застосовувати багатоваріантне моделювання, де одна і та ж модель використовує різні вхідні дані.

Наукова новизна

Запропоновані нові алгоритми розподіленого керування процесом моделювання в Грід середовищі, які скорочують загальний час імітаційного моделювання складних систем.


Обчислювальний Грід

Грід є інфраструктурою, побудованою на основі Інтернет, яка забезпечує масштабовані, безпечні, швидкодіючі механізми для виявлення і доступу до видалених обчислювальних і інформаційних ресурсів (можливо різної архітектури). Появі Грід технологій передувало, з одного боку, створення надшвидкісних комп'ютерних мереж, які використовують відкриті універсальні інтерфейси і протоколи, а з іншого боку, вирішення завдань комп'ютерної безпеки, таких як аутентифікація, авторизація ресурсів і контроль доступу до ресурсів.

В даний момент активно розвивається дворівнева організація ресурсів Грід, тобто Грід побудований з тих, що знаходяться в різних точках мережі кластерних вузлів, в які об'єднані велика кількість обчислювальних ресурсів. При цьому обчислювальні ресурси повністю виділяються в Грід і не можуть використовуватися власниками. При такій організації обчислювальні ресурси об'єднуються в кластери і знаходяться під управлінням локального менеджера.

Основне завдання Грід незалежно від реалізації - координування колекцій ресурсів. Використання агентних систем для планерування завдань в Грід дає можливість розв'язати дві основні проблеми - масштабованшсть та адаптивність. Агенти надають ресурси і здійснюють пошук певного ресурсу. Агент встановлюється на виконавчих комп'ютерах, власники яких хочуть надати свої ресурси в Грід[1].

Зараз grid знаходиться в тому стані, в якому технологія Web була десять років тому. Хоча вже реалізовано немало новаторських проектів, воістину глобальної grid-мережі ще не існує. Проте, схоже, що вона вже не за горами. Адже є всі основні компоненти, необхідні для її створення: швидкісні оптичні лінії зв'язку, швидкодіючі процесори, комп'ютерна архітектура з масовим паралелізмом, комунікаційні протоколи, ПО для управління розподіленими обчисленнями, засоби захисту і методи електронної комерції. Надію вселяє і те, що потреба в grid вже назріла. В світі накопичилися величезні комп'ютерні ресурси, значна частина яких пропадає даремно. Залишилося лише допрацювати і адаптувати grid-технологію. І тоді, можливо, стануться цікаві зміни. Адже багато фахівців вважають, що grid зробить таку ж революцію в області обчислювальної обробки, яку мережу Інтернет зробила у сфері комунікації.

Але щоб grid-технологія знайшла зрілість, треба доповнити стандартні протоколи всілякими допоміжними засобами: захистом даних і комунікацій, потужними механізмами аутентифікації, універсальними форматами даних (тут великі надії покладаються на XML), методами управління розподілом ресурсів, обліку вжитку ресурсів користувачами і додатками, обробки відмов і розподіленого адміністрування.

Виконання завдань в системі Грід

Отримав загальне визнання спосіб організації програмного забезпечення грід заснований на відкритій архітектурі служб OGSA, у відповідність з якою грід кваліфікується як програмна система, яка складається з розподілених компонентів - служб, які взаємодіють між собою за допомогою стандартних, відкритих і універсальних протоколів і інтерфейсів. Маючи на увазі головним чином грід обчислювального типа, можна розглядати його функціонування як процес обслуговування стандартизованих запитів на виконання обчислень, оформлених у вигляді завдань для загальнопоширених операційних систем, причому виконання цих завдань виробляється на ресурсах, які вибираються із загального пулу. Перерахуємо основні етапи обробки завдання (рис. 1):

  • Планерування ресурсів. Спеціальна компонента програмного забезпечення - планувальник виділяє із загального пулу виконавчі ресурси - ті, на яких завдання виконуватиметься.
  • Доставка виконуваних файлів і вхідних файлів на виконавчі ресурси.
  • Виконання завдання.
  • Після закінчення завдання доставка результуючих файлів на сервери зберігання (зокрема, на робоче місце користувача).

Рис. 1 Схема обробки запитів і віртуалізації ресурсів

Представлення часу при імітаційному моделюванні.

Основним завданням імітаційного моделювання є правильне відображення порядку і тимчасових стосунків між змінами в модельованій системі на порядок виконання подій в моделі.

У імітаційному моделюванні є три поняття часу: фізичне, модельне і процесорне.[4] Фізичний час відноситься до модельованої системи. Модельний час - відтворення фізичного часу в моделі. Під процесорним часом мають на увазі час виконання імітаційної моделі на комп'ютері.

При моделюванні будь-якої системи ми спираємося на події, які відбуваються в даній системі. Якщо не розглядати "одночасні" події, тобто що виконуються в один і той же момент модельного часу, то це вимога правильного відображення порядку змін в модельованій системі означає, що події в моделі повинні виконуватися в хронологічному порядку в модельному часі.

Моделювання складних систем може зажадати значних витрат процесорного часу. Тому іншим завданням імітаційного моделювання є зменшення процесорного часу. Це може бути досягнуто шляхом використання багатопроцесорних або розподілених систем.[8] Імітаційне моделювання можна розділити на послідовне і паралельне виконання обробки подій.

Керування часом при розподіленому імітаційному моделюванні.

Розподілене імітаційне моделювання має три джерела свого розвитку: моделювання, що вимагає для свого виконання великої кількості обчислювальних ресурсів, військові застосування і комп'ютерні ігри з використанням Інтернет. Під розподіленим імітаційному моделюванням розуміється розподілене виконання єдиної програми імітаційної моделі на мультипроцесорній або мультікомпьютерной системі.

При розподіленому моделюванні на відміну від послідовного моделювання первинною одиницею є не об'єкт, а так званий логічний процес. Логічний процес - це послідовна подмодель.[6] Кожен логічний процес має власний набір об'єктів і власну програму, що керує. Логічний процес має власний локальний список подій і власний годинник локального моделювання часу. Логічні процеси взаємодіють виключно за допомогою передачі повідомлень.

Передача повідомлень може здійснюватися логічними процесами безпосередньо за допомогою засобів операційної системи. Але перспективніша схема, приведена на рис. 2.


Рис. 2 Схема виконання розподіленої моделі

Опис алгоритмів керування часом.

Метою механізму сінхронізації модельного часу є виконання кожним логічним процесом станів у черзі старту часових міток. Метою консервативних алгоритмів є недопускання парадоксів часу [11]. Розподілене моделювання не накладає жодних вимог на систему передачі повідомлень. Передбачається лише, що одержувач повинен отримувати повідомлення в тому ж порядку, в якому їх посилає відправник, і що відправник виконує свій пошук подій в порядку неубування їх тимчасових міток.

До теперішнього часу відома велика кількість консервативних алгоритмів і їх модифікацій, використовуваних при моделюванні певних класів реальних систем. Критерієм використання того або іншого консервативного алгоритму для моделювання конкретних систем є відношення накладних витрат цього алгоритму до виграшу, що отримується при паралельного виконання[12].

Якщо консервативні алгоритми виключають навіть потенційну можливість виникнення парадоксу часу, то оптимістичні алгоритми "сподіваються", що при паралельного виконання логічних процесів потенційна можливість виникнення парадоксу часу не стане реальністю. В разі виникнення парадоксу часу оптимістичні алгоритми реалізують "відкат" логічного процесу до значення модельного часу, в який йому було послано повідомлення, що викликало парадокс часу[12]. Відкіт включає ліквідацію наслідків некоректного виконання логічного процесу з врахуванням повідомлення, що викликало парадокс часу. Цей механізм отримав назву "Деформації часу".

Для оцінки ефективності вживання різних підходів до управління часом розроблена модель системи розподіленого моделювання з бібліотекою тієї, що реалізує консервативні і оптимістичні алгоритми. На основі експериментальних оцінок за допомогою цієї моделі будуть вибрані алгоритми що підлягають реалізації в системі ГРІД моделювання.

Механізм роботи системи в моїй магистрськой

В основу розробки моєї магистрськой покладена схема складена з двох клієнтів і сервера, який всім керує. На рис. 3 зображена загальна схема системи. Системою керує сервер, всі операції системи проходять через нього. Клієнт має дві оболонки - www-оболонка і оболонка windows, розроблена на Visual C++ MFC.


Рисунок 3. Загальна схема роботи Грід мережі (7 кадрів, 5 повторень, 30кб)


Застосування Грід систем дозволяє значно підвищити швидкість і якість обчислень, особливо в разі використання слабозв'язаних гетерогенних обчислювальних комплексів. У даній роботі описана система роботи Грід мережі. Розглянуто поверхневе уявлення про алгоритми управління часом при імітаційному моделюванні.


При написанні даного автореферату магістрська робота ще не завершена. Остаточне завершення: грудень 2009 р. Повний текст роботи і матеріали можуть бути отримані у автора або його керівника після вказаної дати.


Список літератури:

  1. Березовский П.С., Коваленко В.Н. Состав и функции системы диспетчеризации заданий в гриде с некластеризованными ресурсами, ИПМ им. М.В.Келдыша РАН, Москва, 2007.
    http://www.keldysh.ru/papers/2007/prep67/prep2007_67.html
  2. Шелестов Ю.А., Скакун С.В., Куссуль О.М. Агентный подход к реализации модели поведения пользователей GRID-систем, Институт космических исследований НАНУ-НКАУ, Москва, 2004.
    http://nbuv.gov.ua/portal/natural/Npdntu/2008/ikot/08saypgs.pdf
  3. Гороховський С.С., Римарчук В.К. Технологiя сiтки (GRID) i використання агентних платформ для задач планування // Наукові записки НаУКМА. Комп'ютерні науки.- 2005.
    http://www.library.ukma.kiev.ua/e-lib/NZ/NZV36_2005/04_gorokhovsky_ss.pdf
  4. Фостер Я., Кессельман К., Тьюке С. Анатомия Грид. Создание Масштабируемых Виртуальных Организаций, перевод с англ.: Карягин Д.А., ИПМ им. М.В.Келдыша РАН, Москва 2004.
    http://gridclub.ru/library/publication.2004-11-29.7104738919/publ_file/
  5. Коваленко В.Н., Корягин Д.А. Организация ресурсов грид, ИПМ им. М.В.Келдыша РАН, Москва 2004.
    http://www.keldysh.ru/papers/2004/prep63/prep2004_63.html
  6. Коваленко В.Н., Коваленко Е.И., Шорин О.Н. Разработка диспетчера заданий грид, основанного на опережающем планировании, ИПМ им. М.В.Келдыша РАН, Москва 2005.
    http://www.keldysh.ru/papers/2005/prep133/prep2005_133.html
  7. А.Е. Дорошенко, А.П. Розенблат, К.А. Рухлис, Ю.М. Тырчак МОДЕЛИ И СРЕДСТВА ПРОГРАММИРОВАНИЯ Грид-СИСТЕМ, Институт программных систем НАН Украины, Киев, 2005.
    http://usachov1987.narod.ru/Doroshenko_1.doc
  8. Аветисян А.И., Гайсарян С.С., Грушин Д.А., Кузюрин Н.Н., Шокуров А.В. Эвристики распределения задач для брокера ресурсов Grid, Институт системного программирования РАН, Москва, 2004.
    http://www.citforum.ru/nets/digest/grid/index.shtml
  9. Фостер Я. Разные оттенки ГРИД. Еженедельник "Computerworld", #13, 2005 год // Издательство "Открытые системы".
    http://www.osp.ru/cw/2005/13/038_1.htm
  10. David W. Emerging Distributed Computing Technologies, Department of Computer Science, Cardiff University, Cardiff, 2004.
    http://www.cs.cf.ac.uk/User/David.W.Walker/IGDS/GridCourse.doc
  11. Дал О.И. Нигард К. Симула - язык для программирования и описания систем с дискретными событиями // Алгоритмы и алгоритмические языки. Вып. 2. М.: ВЦ АН СССР, 1967
    www.gpss.ru/paper/okoln_2.pdf
  12. Шеннон Р. Имитационное моделирование систем - искусство и наука. М.: Мир 1978
    www.twirpx.com/file/21030/

Усачов Олексій Олександрович