
- •Карпенко а.П., Федорук е.В. Учебное пособие
- •Содержание
- •Метод балансировки загрузки
- •Иерархический графовый алгоритм балансировки загрузки
- •Спектральный алгоритм бисекции графа
- •Экспериментальная часть
- •Порядок выполнения работы
- •Контрольные вопросы
- •Содержание отчета о работе
- •Лабораторная работа №2. Аналитическое исследование эффективности статической балансировки загрузки мвс
- •Цель работы
- •Теоретическая часть
- •Постановка задачи
- •Статическая балансировка загрузки методом равномерной декомпозиции параллелепипеда п
- •Статическая балансировка загрузки методом равномерной декомпозиции расчетных узлов
- •Экспериментальная часть
- •Статическая балансировка загрузки методом равномерной декомпозиции параллелепипеда п
- •Статическая балансировка загрузки методом равномерной декомпозиции расчетных узлов
- •Порядок выполнения работы
- •Контрольные вопросы
- •Содержание отчета о работе
- •Лабораторная работа №3. Исследование эффективности статической балансировки загрузки мвс с помощью имитационного моделирования
- •Цель работы
- •Теоретическая часть
- •Постановка задачи
- •Экспериментальная часть
- •Порядок выполнения работы
- •Экспериментальная часть
- •Порядок выполнения работы
- •Экспериментальная часть
- •Порядок выполнения работы
- •Экспериментальная часть
- •Порядок выполнения работы
- •Теоретическая часть
- •Постановка задачи
- •Экспериментальная часть
- •Порядок выполнения работы
- •Контрольные вопросы
- •Содержание отчета о работе
- •Список использованных источников
- •Приложение а. Статическая балансировка загрузки. Gpss-программа
- •Приложение б. Динамическая равномерная балансировка загрузки. Gpss-программа
- •Приложение в. Динамическая экспоненциальная балансировка загрузки. Gpss-программ
Приложение а. Статическая балансировка загрузки. Gpss-программа
* * * * * * * * * * * * * * * * * * * *
* N*z (1024=64*16) *
* Единица модельного времени mkc *
* Вычислительная сложность 1e7 *
* Время обработки 0 - 1e5 mks *
* * * * * * * * * * * * * * * * * * * *
* "Параллельная" модель *
* * * * * * * * * * * * * * * * * * * *
1 fnproc_par function rn2,c2; время обработки в "параллельной" модели
2 0,0/1,100001
3 fnproc_posl function rn3,c2; время обработки в "последов-ой" модели
4 0,0/1,100001
5 us variable p4/p3; расчет коэффициента ускорения
6 tabl_s table v$us,42,0.25,60
7 proc_par storage 64; число процессоров в "параллельной" модели N=64
8 proc_posl storage 1; число процессоров в "последовательной" модели N=1
9 generate 1e8,100; транзакт-задача (1024 узла)
10 split 63; N=63+1 - количество групп
11 assign 1,16;z=16 - количество узлов в группе
12 queue qhost1_par; очередь на host-процессоре
13 seize host
14 depart qhost1_par
15 advance 5,3; обработка на host-процессоре
16 release host
17 queue qproc_par
18 enter proc_par; обработка процессором
19 depart qproc_par
20 proc2 advance fn$fnproc_par; цикл для обработки группы
21 loop 1,proc2; число итераций определено в 1-ом параметре транзакта
22 leave proc_par
23 queue qhost2_par; заключительная обработка на host-процессоре
24 seize host
25 depart qhost2_par
26 advance 5,3
27 release host
28 assemble 64; объединение транзактов, относящихся к одной задаче
29 assign 3,m1; фиксация времени прохождения транзакта по модели
* * * * * * * * * * * * * * * * * * * *
* "Последовательная" модель *
* * * * * * * * * * * * * * * * * * * *
31 mark 2
32 split 1023;1024 узла (одна задача)
33 queue qhost1_posl
34 seize host
35 depart qhost1_posl
36 advance 5,3
37 release host
38 queue qproc_posl
39 enter proc_posl; обработка процессором
40 depart qproc_posl
41 advance fn$fnproc_posl
42 leave proc_posl
43 queue qhost2
44 seize host
45 depart qhost2
46 advance 5,3
47 release host
48 assemble 1024
49 assign 4,mp2; фиксация времени прохождения транзакта по модели
50 tabulate tabl_s; расчет коэффициента ускорения
51 terminate 1
Приложение б. Динамическая равномерная балансировка загрузки. Gpss-программа
* * * * * * * * * * * * * * * * * * * *
* Z=K*z (1024=256*4) *
* Единица модельного времени mkc *
* Вычислительная сложность 1e7 *
* Время обработки 0 - 1e5mks *
* Число процессоров N=64 *
* ** * * * * * * * * * * * * * * * * * *
* "Параллельная" модель *
* * * * * * * * * * * * * * * * * * * *
1 fnproc_par function rn2,c2; время обработки в "параллельной" модели
2 0,0/1,100001
3 fnproc_posl function rn3,c2; время обработки в "последов-ой" модели
4 0,0/1,100001
5 us variable p4/p3; расчет коэффициента ускорения
6 tabl_s table v$us,42,0.25,60
7 proc_par storage 64;число процессоров в "параллельной" модели N=64
8 proc_posl storage 1; число процессоров в "последовательной" модели N=1
9 generate 1e8,100; транзакт-задача (1024 узла)
10 split 255; К=255+1 - количество групп
11 assign 1,4; z=4 - количество узлов в группе
12 queue qhost1_par;очередь на host-процессоре
13 seize host
14 depart qhost1_par
15 advance 5,3; обработка на host-процессоре
16 release host
17 queue qproc_par
18 enter proc_par; обработка процессором
19 depart qproc_par
20 proc2 advance fn$fnproc_par; цикл для обработки группы
21 loop 1,proc2; число итераций определено в 1-ом параметре транзакта
22 leave proc_par
23 queue qhost2_par; заключительная обработка на host-процессоре
24 seize host
25 depart qhost2_par
26 advance 5,3
27 release host
28 assemble 256; объединение транзактов, относящихся к одной задаче
29 assign 3,m1; фиксация времени прохождения транзакта по модели
* * * * * * * * * * * * * * * * * * * *
* "последовательная" модель *
* * * * * * * * * * * * * * * * * * * *
31 mark 2
32 split 1023; 1024 узла (одна задача)
33 queue qhost1_posl
34 seize host
35 depart qhost1_posl
36 advance 5,3
37 release host
38 queue qproc_posl
39 enter proc_posl; обработка процессором
40 depart qproc_posl
41 advance fn$fnproc_posl
42 leave proc_posl
43 queue qhost2
44 seize host
45 depart qhost2
46 advance 5,3
47 release host
48 assemble 1024
49 assign 4,mp2 фиксация времени прохождения транзакта по модели
50 tabulate tabl_s; расчет коэффициента ускорения
51 terminate 1