- •Предпроектный анализ
- •Введение
- •Анализ кластерных технологий в контексте лабораторного практикума
- •Типы кластеров
- •Кластеры высокой доступности
- •Кластеры распределения нагрузки
- •Вычислительные кластеры
- •Системы распределенных вычислений (grid)
- •Показатели эффективности параллельного алгоритма
- •Средства разработки и поддержки параллельных приложений
- •Принципы работы среды mpich
- •Кластер миит т-4700
- •Обоснование целесообразности разработки
- •Требования к документации
- •Требования к техническому обеспечению
- •Требования к рабочим станциям
- •Требования к разрабатываемому по
- •Требования к показателям назначения
- •Анализ исходных данных
- •Разработка лабораторного комплекса «кластерные системы»
- •Разработка методического обеспечения для лабораторного комплекса
- •Содержание лабораторных работ
- •Рабочее задание для лабораторной работы №1
- •Рабочее задание для лабораторной работы №2
- •Рабочее задание для лабораторной работы №3
- •Разработка программного обеспечения для лабораторного комплекса
- •Настройка mpich2
- •Создание общего сетевого ресурса
- •Описание хода лабораторной работы №1 Создание mpi-программы в Visual Studio
- •Листинг программы mpi-программы
- •Запуск mpi-программ
- •Балансировка
- •Результаты выполнения mpi-программы
- •Построение графиков
- •Лабораторная работа №2
- •Подготовка рабочего места для выполнения лабораторной работы №2
- •Описание хода лабораторной работы №2 Подключение к кластеру миит т-4700
- •Компиляция программы
- •Листинг программы mpi-программы
- •Составление скрипта задания
- •Запуск заданий
- •Занесение данных в таблицу
- •Построение диаграмм
- •Системотехнический расчёт: расчёт показателей эффективности вычислений
- •Описание показателей эффективности параллельных вычислений
- •Описание хода лабораторной работы №3
- •Анализ человеко-машинного взаимодействия
- •Обзор теории тестовых заданий (Item response theory).
- •Процедура расчёта
- •Построение характеристических кривых для заданий
- •Обсуждение результатов и дальнейших действий
- •Экономическая часть
- •Постановка экономической задачи.
- •Расчет затрат, связанных с разработкой лабораторного комплекса.
- •Экономическая эффективность
- •Расчёт показателей эффективности
- •Расчет затрат по эксплуатации лабораторного комплекса.
- •Расчёт эффективности разработки.
- •Список источников
- •Приложения
- •Приложение 1. Листинг разработанного по
- •Листинг программы Интерфейс для mpich
- •Листинг тестирующей mpi-программы
- •Приложение 2. Инструкция по написанию и запуску заданий на кластере миит т-4700.
Составление скрипта задания
После компиляции по указанному пути появится исполняемый файл программы. Для её запуска требуется написать задание, выполнение управление которым на linux-кластере осуществляет менеджер распределённых ресурсов Torque. Задание запуска программы полученной выше для менеджера ресурсов Torque представляет собой скрипт следующего содержания:
#!/bin/bash
#PBS -o /mnt/scratch/home/ogutsu/mylog
echo start
/share/mpiexec-0.83/mpiexec /mnt/scratch/home/ogutsu/cpi.mpi
echo end
Данный определяет путь к файлу стандартного вывода /mnt/scratch/home/ogutsu/mylog, запускает утилиту /share/mpiexec-0.83/mpiexec, которая выполняет mpi-программы, в данном случае нашу /mnt/scratch/home/ogutsu/cpi.mpi. Написание и запуск заданий для менеджера распределённых ресурсов Torque описано подробнее в приложении 2.
Запуск заданий
Общая схема кластера под управлением менеджера ресурсов Torque изображена на рисунке 2.18.
Команда
qsub -l nodes=20 f1.pbs
помещает задание f1.pbs, которое нужно выполнить на 20 узлах кластера, в очередь. Если задание первое в очереди, то оно выполняется. Задание выполняет программу в пакетном режиме, помещая вывод в файл, указанный в скрипте задания. Его содержимое можно легко посмотреть.
Содержимое /mnt/scratch/home/ogutsu/mylog:
start
pi is approximately 3.1415926535899708, Error is 0.0000000000001776
wall clock time = 8.752536
end
Рисунок 2.18. Схема кластера, управляемого менеджеров ресурсов Torque.
Занесение данных в таблицу
Результаты многократного запуска программы следует занести в таблицу №2.
В столбце Опции запуска MPI-программы нужно написать число узлов и ядер, на которых выполняется задание. О запуске заданий менеджера распределённых ресурсов Torque написано подробнее в приложении 2. В качестве сложности задачи снова выступает число итераций вычисления интеграла. Т.к.MPI- программа выполняется на кластере в пакетном режиме, варьировать этот параметр нужно в самой программе или передавая программе параметр при запуске. После выполнения MPI-программы с заданными (согласно варианту) сложностью и числом вычислительных узлов, необходимо внести время выполнения программы в секундах в таблицу 2.6. В последней серии опытов число ядер меняется по закону 2n-1, где n номер опыта, а сложность задачи меняется пропорционально числу ядер, начиная с числа 16777216, т.е. 223+n.
Таблица №2.6. Результат выполнения вычислений на кластере МИИТ Т-4700.
Опции запуска MPI-программы |
Сложность задачи |
Время выполнения |
|
Число узлов |
Число ядер |
||
1 |
8 |
1000000000 |
1.264005 |
2 |
8 |
1000000000 |
0.702406 |
3 |
8 |
1000000000 |
0.567381 |
4 |
8 |
1000000000 |
0.447176 |
5 |
8 |
1000000000 |
0.412220 |
6 |
8 |
1000000000 |
0.366205 |
7 |
8 |
1000000000 |
0.298248 |
8 |
8 |
1000000000 |
0.241296 |
9 |
8 |
1000000000 |
0.214650 |
10 |
8 |
1000000000 |
0.163198 |
1 |
1 |
1000000 |
0.017913 |
2 |
1000000 |
0.009362 |
|
4 |
1000000 |
0.004605 |
|
8 |
1000000 |
0.002418 |
|
2 |
8 |
1000000 |
0.001659 |
4 |
8 |
1000000 |
0.000832 |
8 |
8 |
1000000 |
0.000616 |
16 |
8 |
1000000 |
0.000605 |
1 |
1 |
16777216 |
0.199176 |
2 |
33554432 |
0.210453 |
|
4 |
67108864 |
0.231804 |
|
8 |
134217728 |
0.224581 |
|
2 |
8 |
268435456 |
0.221952 |
4 |
8 |
536870912 |
0.264089 |
8 |
8 |
1073741824 |
0.272010 |