Постановка задачи

Пусть на суперкомпьютерный кластер приходят задания в виде пакетов конечного размера от 10 Мбайт до 100 Мбайт, но чаще всего 60 Мбайт. Каждое задание требует определенного алгоритма обработки (всего 5 алгоритмов) на кластере. Алгоритмы сложности назначаются заданию случайным образом.

В кластере имеется центральная ЭВМ, занимающаяся подготовкой и распределением заданий, а также сбором результатов с 5 компьютеров, на которых происходит собственно обработка. Машины могут обрабатывать задания размером до 20 Мбайт.

В зависимости от размера задания оно распределяется между несколькими машинами. Кластер построен по топологии звезда. Каналы связи, соединяющие рабочие ЭВМ с центральной, – дуплексные; имеют одинаковую проводимость – 1 Мбайт в секунду. Задания поступают на центральную ЭВМ и распределяются между ЭВМ. При этом, если в кластере остаются свободные ресурсы (компьютеры), их можно загрузить следующим заданием.

Описание модели суперкомпьютерного кластера

В качестве среды для разработки модели выберем программный продукт (ПП) Arena (разработчик Rockwell Software, США), позволяющий создавать имитационные модели разнородных процессов и систем в терминах предметной области для дальнейшей работы с ними.

На рис. 5.1 представлена разработанная в Arena модель компьютерного кластера для распределенно-параллельных вычислений. Рассмотрим ее подробнее.

Логику разработанной модели условно разобьем на 2 части: поступление заданий и их обработка. Задание в терминах математического аппарата систем массового обслуживания и программного пакета Arena будем называть сущностью.

Логика модели компьютерного кластера для распределенно-паралленьных вычислений

Рис. 5.1. Логика модели компьютерного кластера для распределенно-паралленьных вычислений

Модуль Create 1 (рис. 5.2) генерирует поступление сущностей в систему генератором случайных чисел. Максимальное число заданий – 100.

Модуль Create 1

Рис. 5.2. Модуль Create 1

Задания поступают в модуль Decide 3 (рис. 5.3), откуда случайным образом с равной вероятностью направляются в модули Assign 1, Assign 2, Assign 3, Assign 5 или Assign 6.

Puc. 5.3. Модуль Decide 3

После прохождения одного из этих модулей (рис. 5.4) каждой сущности (заданию) присваивается время обработки, которое равно значению атрибута Attribute 2. Время обработки. Attribute 2, влияет на время обработки поступившего задания и моделирует алгоритм обработки задания компьютерами кластера, т. е. влияет на загрузку узлов кластера.

Затем задания проходят через модуль Assign 4 (рис. 5.5), где задается значение атрибута Attribute 1 – размер задания – изменяется от 10 до 100 Мбайт.

Модуль Assign 1

Рис. 5.4. Модуль Assign 1

Puc. 5.5. Модуль Assign 4

В результате на компьютерный кластер (модуль Decide 2) поступают задания, имеющие определенный конечный размер (Attribute 1) и требующие определенного времени обработки (Attribute 2).

Модуль Decide 2

Рис. 5.6. Модуль Decide 2

В модуле Decide 2 (рис. 5.6) в зависимости от длины задания происходит распределение заданий ио пяти очередям. В очередь к модулю Hold 1 поступают задания, длина которых от 10 до 20 Мбайт, к модулю Hold 2 – с длиной 21...40 Мбайт, к Hold 3 -41...60 Мбайт, к Hold 4 – 61... 80 Мбайт, и к модулю Hold 5 – 81... 100 Мбайт.

Каждый модуль Hold (рис. 5.7) выпускает сущности в зависимости от назначаемого условия (количество свободных единиц ресурса и назначаемый приоритет модуля).

Модуль Hold 5

Рис. 5.7. Модуль Hold 5

Модуль Process I

Рис. 5.8. Модуль Process I

Вычислительные машины, на которых происходит обработка заданий, представлены в виде одного ресурса (Resource 1), заданной емкостью 5. Данный ресурс смоделирован в пяти различных модулях Process, различной емкостью: 1, 2, 3, 4, 5. В зависимости от размера задания поступают на обработку в различные процессы и захватывают различное количество ячеек ресурса.

Сущности, выходящие из очереди Hold1.Queue, поступают в модуль Process 1 (рис. 5.8) и захватывают одну единицу ресурса Resourcel. Соответственно, сущности из очереди Hold2.Queue захватывают две единицы ресурса (рис. 5.9), из Hold3.Queue – три единицы, из Hold4.Queue – четыре, из Hold5.Queue – все пять единиц. В каждом случае длительность обработки задания равна значению атрибута Attribute 2 сущности (время обработки задания).

После обработки на вычислительных машинах задания поступают в модуль Dispose 1 и удаляются из системы (рис. 5.10).

Модуль Process 2

Рис. 5.9. Модуль Process 2

Модуль Dispose 1

Рис. 5.10. Модуль Dispose 1

 
< Пред   СОДЕРЖАНИЕ     След >