
- •Карпенко а.П., Федорук е.В. Учебное пособие
- •Содержание
- •Метод балансировки загрузки
- •Иерархический графовый алгоритм балансировки загрузки
- •Спектральный алгоритм бисекции графа
- •Экспериментальная часть
- •Порядок выполнения работы
- •Контрольные вопросы
- •Содержание отчета о работе
- •Лабораторная работа №2. Аналитическое исследование эффективности статической балансировки загрузки мвс
- •Цель работы
- •Теоретическая часть
- •Постановка задачи
- •Статическая балансировка загрузки методом равномерной декомпозиции параллелепипеда п
- •Статическая балансировка загрузки методом равномерной декомпозиции расчетных узлов
- •Экспериментальная часть
- •Статическая балансировка загрузки методом равномерной декомпозиции параллелепипеда п
- •Статическая балансировка загрузки методом равномерной декомпозиции расчетных узлов
- •Порядок выполнения работы
- •Контрольные вопросы
- •Содержание отчета о работе
- •Лабораторная работа №3. Исследование эффективности статической балансировки загрузки мвс с помощью имитационного моделирования
- •Цель работы
- •Теоретическая часть
- •Постановка задачи
- •Экспериментальная часть
- •Порядок выполнения работы
- •Экспериментальная часть
- •Порядок выполнения работы
- •Экспериментальная часть
- •Порядок выполнения работы
- •Экспериментальная часть
- •Порядок выполнения работы
- •Теоретическая часть
- •Постановка задачи
- •Экспериментальная часть
- •Порядок выполнения работы
- •Контрольные вопросы
- •Содержание отчета о работе
- •Список использованных источников
- •Приложение а. Статическая балансировка загрузки. Gpss-программа
- •Приложение б. Динамическая равномерная балансировка загрузки. Gpss-программа
- •Приложение в. Динамическая экспоненциальная балансировка загрузки. Gpss-программ
Статическая балансировка загрузки методом равномерной декомпозиции параллелепипеда п
Для балансировки
загрузки при решении рассматриваемой
задачи можно использовать различные
методы статической и динамической
балансировки загрузки. Простейшим
является статический метод на основе
декомпозиции параллелепипеда П
на
равных подобластей и назначении каждой
из этих подобластей своему процессору.
Назовем данный метод балансировки
методом равномерной декомпозиции
параллелепипеда П. Для двумерного
случая
этот метод балансировки иллюстрирует
рисунок 2.1.
Балансировка загрузки методом декомпозиции параллелепипеда П очень проста в реализации. Однако она может быть малоэффективной в следующем случае:
объем пересечения параллелепипеда П и множества
(т.е. объем множества ) невелик по сравнению с объемом параллелепипеда П;
вычислительная сложность значительно превышает вычислительную сложность .
При этом некоторые
из подобластей
могут не содержать вовсе или содержать
малое количество узлов сетки
,
принадлежащих множеству
,
и процессоры МВС, которым распределены
такие подобласти, будут значительное
время простаивать.
Рисунок 2.1 - К балансировке загрузки методом равномерной декомпозиции параллелепипеда П
Введем следующие обозначения:
- множество узлов сетки , покрывающих подобласть
,
;
,
- количество узлов во множестве ,
;
- символ ближайшего целого большего;
,
- количество узлов сетки , принадлежащих множеству ;
, ,
- узлы сетки , принадлежащие множеству ;
- общее количество узлов сетки , принадлежащих множеству ;
.
В этих обозначениях схему параллельных вычислений при решении рассматриваемой задачи с использованием балансировки загрузки методом равномерной декомпозиции параллелепипеда П можно представить в следующем виде.
Шаг 1. Host-процессор выполняет следующие действия:
строит сетку ;
плоскостями, параллельными одной из координатных плоскостей, разбивает ее узлы на множества
;
передает процессору
координаты узлов множества .
Шаг 2. Процессор выполняет следующие действия:
принимает от host-процессора координаты узлов множества ;
последовательно для всех узлов этого множества определяет их принадлежность множеству ;
вычисляет в каждом из узлов множества значение вектор-функции
;
передает host-процессору вычисленных значений и заканчивает вычисления.
Шаг 3. Host-процессор выполняет следующие действия:
принимает от процессоров , вычисленные ими значения вектор-функции ;
на основе полученных значений вектор-функции вычисляет приближенное значение функционала .
Очевидна модификация балансировки загрузки методом равномерной декомпозиции параллелепипеда П, при которой множество узлов строится не host-процессором, а процессором , . При этом host-процессору достаточно передать процессору лишь границы «его» подобласти . За счет распараллеливания процедуры генерации расчетной сетки и, возможно, меньшего количества обменов следует ожидать, что эффективность такого метода балансировки будет выше, чем эффективность метода равномерной декомпозиции параллелепипеда П. Отметим, что указанная модификация рассматриваемого метода возможна лишь в том случае, когда можно отказаться от централизованной генерации расчетной сетки.
Можно предложить
и другую модификацию метода равномерной
декомпозиции параллелепипеда П,
направленную на повышение его
эффективности. Разделим область
на подобласти
,
таким образом, чтобы их объемы пересечений
с множеством
были примерно одинаковы. Если при этом
использовать равномерную сетку
,
то ее количество узлов в каждой из
подобластей
,
в отличие от исходной схемы метода
декомпозиции параллелепипеда П,
будет примерно одинаковым. Если множество
имеет сложную топологию, то построение
такого разбиения области
на подобласти может иметь неприемлемо
высокую вычислительную сложность.
В соответствии с изложенной схемой балансировки загрузки методом равномерной декомпозиции параллелепипеда П, время решения задачи на процессоре можно оценить величиной
,
, (2.1)
где сумма
представляет собой вычислительную
загрузку процессора
,
а сумма
- его коммуникационную загрузку. Отсюда
следует, что время параллельного решения
всей задачи равно
. (2.2)
Аналогично, время решения задачи на одном процессоре равно
. (2.3)