Дядык Дмитрий Сергеевич

 

ПОД- СЕКЦИЯ 3. Информатика, вычислительная техника и автоматизация. 

Дядык Дмитрий Сергеевич

Магистр

Донецкий национальный технический университет

 

Среда моделирования вычислений в GRID


С тех пор, как стало возможным объединять ЭВМ в компьютерные сети, проблемы проектирования и развертывания распределенных компьютерных систем исследуются уже в течение многих лет. Все большее количество исследований выполняются в области распределенных широкомасштабных (глобальных) вычислений. Эти группы разрабатывают промежуточное программное обеспечение (middleware), библиотеки и инструментальные средства, которые позволяют совместно использовать территориально распределенные, но объединенные ресурсы как единую мощную платформу для выполнения параллельных и распределенных приложений. Такой подход к вычислениям ранее был известен под несколькими названиями, такими, как метакомпьютинг [1, c. 35], масштабируемые или глобальные вычисления, в последнее время — вычисления Grid [1, c. 24]. В свою очередь метакомпьютинг, можно обозначить как использование компьютерных сетей для создания распределенной вычислительной инфраструктуры национального и мирового масштаба. Сети, объединяющие высокопроизводительные компьютерные системы, могут стать средством организации вычислений следующего поколения. А Grid - согласованная, открытая и стандартизированная среда, которая обеспечивает гибкое, безопасное, скоординированное разделение ресурсов в рамках виртуальной организации; сложный механизм, состоящий из множества разнородных элементов, поведение же их практически невозможно изучить, используя конкретную систему [1, c. 37]. Для этого нужно использовать модель.

Моделирование само по себе играет колоссальное значение и позволяет прогнозировать разработку будущей инфраструктуры grid, то есть тестировать прототип Grid приложений.

В данной работе представлена система моделирования распределенных Grid-систем. Существенными особенностями реализации является:

1. использование архитектуры MDA, когда описание моделируемой среды производится на специальном языке предметной области и затем автоматически транслируется в код программы, которая представляетсобой выполняемую модель. Это позволяет пользователю быстро задать характеристики моделируемой среды и получить результат. Также следует отметить возможность существования нескольких реализаций выполняемой модели, например, на языках Java или C++.

2. Система позволяет моделировать различные Grid-архитектуры: одно- и двухуровневые системы с одним или несколькими брокерами, добавлять хранилища данных, определять топологию сетевых соединений и т.д.

3. Выполняемая модель реализована в виде конечных автоматов. Это существенно увеличивает призводительность и масштабируемость системы по сравнению с использованием отдельных Java-потоков для каждого элемента моделируемой среды.

4. Система предоставляет возможность для быстрого описания эвристик распределения задач с помощьюнабора правил. При моделировании распределения задач в Grid-системе часто требуется проверить несколько эвристик, незначительно отличающихся друг от друга, например, сортировкой входного потока задач способом выбора очередной задачи или ресурса и т.п. С помощью представленного языка правил возможно наиболее быстро описать эвристику распределения и проверить ее работу [3, c. 13].

5. В системе поддерживается возможность проведения серии экспериментов, состоящей из последовательных запусков выполняемой модели с изменением некоторых параметров при каждом следующем запуске.

Например, может изменяться поток задач, конфигурация кластеров, сетевых соединений и т.п. Это позволяет в рамках одного эксперимента просмотреть динамику изменения эффективности системы и определить узкие места.

6. В системе реализован удобный механизм обработки результатов моделирования. Результат выполнения модели хранится в отдельном профиле и может обрабатываться независимо. Пользователь может использовать свой шаблон для выбора и визуализации только необходимой в данный момент информации. Это позволяет нескольким исследователям провести моделирование один раз, а затем независимо анализировать полученную информацию.

7. Система включает в себя готовые шаблоны для отображения:

− загруженности системы – общей и с разбивкой по отдельным кластерам;

− времени ожидания задач в очереди – среднего и пикового с разбивкой по классам задач;

− пропускной способности, как по количеству задач, так и с использованием интегральной оценки [3, с. 22].

Система моделирования Grid реализована на языке Java и на основе платформы Eclipse. Это дает возможность интеграции с другими Eclipse-приложениями, например, средой разработки Java, системами контроля версий и позволяет использовать систему моделирования под операционными системами Linux, Windows, Solaris и другими [4, с. 124].

Разработанная программа моделирования grid систем с графическим интерфейсом пользователя и соответствующим графическим отображением результатов моделирования для отображения результатов моделирования в программе используются диаграммы с событиями, произошедшими при моделировании на каждом его этапе и результатам обработки этих событий системой. Для отображения используются диаграммы, отражающие следующие параметры:

- количество выполненных задач каждым кластером за время моделирования;

- загруженность каждого кластера за период моделирования;

- время, которое каждая задача находилась в очереди на обслуживание (а именно количество задач, ожидали менее 10% максимального времени ожидания, менее 20% и т. д.).

Для моделирования пользователю дается на выбор 5 алгоритмов планирования для grid системы:

- BackFillLocal [3,5]

- BestFitLocal [3,5]

- FirstFitLocal [3,5]

- RandomFitGlobal [3,5]

- VirtualGrid [2]

Каждый из этих алгоритмов имеет свои особенности. Особенностью BackFillLocal является то, что небольшая задача может быть запущена без очереди, если она не будет мешать работе основной задачи, то есть занимать меньше соответствующего процента (заданного в настройках моделирование) вычислительных мощностей элемента. Особенность BestFitLocal является то, что планировщик пытается найти кластер, который бы лучше соответствовал задаче - в идеале задача должна загружать весь кластер.

FirstFitLocal ищет первый (ближайший) кластер, способный обслужить заявку, а RandomFitGlobal выбирает любой кластер, который может обслужить заявку.

VirtualGrid выделяет виртуальную grid систему, которая содержит необходимое количество ресурсов для обслуживания задачи, при этом предпочтение отдается наиболее связанным между собой элементам (т.е. тем, которые расположены ближе друг к другу) [4, с. 127].

При реализации планировщика был избран иерархический тип планировщика, поскольку он объединяет преимущества централизованного и децентрализованного способов планирования. Иерархический способ планирования обеспечивает высокую эффективность планирования, поддерживает высокую надежность и может быть применен для grid систем с неограниченной масштабируемостью.

В работе речь идет о среде моделирования, которая позволяет четко оценивать поведение Grid-систем при изменяющихся условиях и оптимизировать стратегии управления потоками задач [5].

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

 

 

 

Литература:

  1. Методы и модели планирования ресурсов в GRID-системах: монография / В.С. Пономаренко, С.В. Листровой, С.В. Минухин, С.В. Знахур. – Х.: ИД «ИНЖЭК», 2008. – 408 с.
  2. Grid Scheduling Architecture Research Group (GSA-RG). [Электронный ресурс]. – Режим доступа к ресурсу: https://forge.gridforum.org/projects/gsa-rg/.
  3.  Кулаков Ю. А., Русанова О.В., Шевело А. П. "Иерархический способ планирования для Grid" // Вісник НТУУ "КПІ". – Інформатика, управління та обчислюватьна техніка.–2009.–№51.–С.13– 21.
  4.  Кулаков О. Ю., Бролінський С. М., Ашаєв Ю. М. "Динамічне створення віртуальних Grid систем для вирішення розподілених задач на основі менеджера ресурсів" // Вісник НТУУ "КПІ".– Інформатика та обчислювальна техніка. – 2009.–№51.–С.125–129.
  5. Грушин Д. А. , Поспелов А. И. "Система моделирования Grid: реализация и возможности применения" [Електроний документ] Режим доступу: http://citforum.ru/nets/articles/grid_modelling/.