- Артикул:00-01092707
- Автор: В.П. Гергель
- ISBN: 978-5-9556-0096-3
- Тираж: 2000 экз.
- Обложка: Твердая обложка
- Издательство: БИНОМ. Лаборатория знаний (все книги издательства)
- Город: Москва
- Страниц: 423
- Формат: 60х90 1/16
- Год: 2007
- Вес: 604 г
- Серия: Учебное пособие для ВУЗов (все книги серии)
Учебное пособие содержит материал для работы в области параллельного программирования. Дается краткая характеристика принципов построения параллельных вычислительных систем, рассматриваются математические модели параллельных алгоритмов и программ для анализа эффективности параллельных вычислений, приводятся примеры конкретных параллельных методов для решения типовых задач вычислительной математики.
Пособие подготовлено по заданию Инновационной образовательной программы Нижегородского госуниверситета им. Н.И. Лобачевского в рамках Национального проекта «Образование».
Для студентов, аспирантов и специалистов, изучающих и практически использующих параллельные компьютерные системы для решения вычислительно трудоемких задач.
Содержание:
Введение
Лекция 1. Принципы построения параллельных вычислительных систем
1.1. Пути достижения параллелизма
1.2. Примеры параллельных вычислительных систем
1.3. Классификация вычислительных систем
1.4. Характеристика типовых схем коммуникации в многопроцессорных вычислительных системах
1.5. Характеристика системных платформ для построения кластеров
1.6. Краткий обзор лекции
1.7. Обзор литературы
1.8. Контрольные вопросы
1.9. Задачи и упражнения
Лекция 2. Моделирование и анализ параллельных вычислений
2.1. Модель вычислений в виде графа «операции — операнды»
2.2. Описание схемы параллельного выполнения алгоритма
2.3. Определение времени выполнения параллельного алгоритма
2.4. Показатели эффективности параллельного алгоритма
2.5. Учебный пример. Вычисление частных сумм последовательности числовых значений
2.6. Оценка максимально достижимого параллелизма
2.7. Анализ масштабируемости параллельных вычислений
2.8. Краткий обзор лекции
2.9. Обзор литературы
2.10. Контрольные вопросы
2.11. Задачи и упражнения
Лекция 3. Оценка коммуникационной трудоемкости параллельных алгоритмов
3.1. Общая характеристика механизмов передачи данных
3.2. Анализ трудоемкости основных операций передачи данных
3.3. Методы логического представления топологии коммуникационной среды
3.4. Оценка трудоемкости операций передачи данных для кластерных систем
3.5. Краткий обзор лекции
3.6. Обзор литературы
3.7. Контрольные вопросы
3.8. Задачи и упражнения
Лекция 4. Принципы разработки параллельных методов
4.1. Моделирование параллельных программ
4.2. Этапы разработки параллельных алгоритмов
4.3. Параллельное решение гравитационной задачи N тел
4.4. Краткий обзор лекции
4.5. Обзор литературы
4.6. Контрольные вопросы
4.7. Задачи и упражнения
Лекция 5. Параллельное программирование на основе MPI
5.1. MPI: основные понятия и определения
5.2. Введение в разработку параллельных программ с использованием MPI
5.3. Операции передачи данных между двумя процессами
5.4. Коллективные операции передачи данных
5.5. Производные типы данных в MPI
5.6. Управление группами процессов и коммуникаторами
5.7. Виртуальные топологии
5.8. Дополнительные сведения о MPI
5.9. Краткий обзор лекции
5.10. Обзор литературы
5.11. Контрольные вопросы
5.12. Задачи и упражнения
Лекция 6. Параллельные методы умножения матрицы на вектор
6.1. Принципы распараллеливания
6.2. Постановка задачи
6.3. Последовательный алгоритм
6.4. Разделение данных
6.5. Умножение матрицы на вектор при разделении данных по строкам
6.6. Умножение матрицы на вектор при разделении данных по столбцам
6.7. Умножение матрицы на вектор при блочном разделении данных
6.8. Краткий обзор лекции
6.9. Обзор литературы
6.10. Контрольные вопросы
6.11. Задачи и упражнения
Лекция 7. Параллельные методы матричного умножения
7.1. Постановка задачи
7.2. Последовательный алгоритм
7.3. Умножение матриц при ленточной схеме разделения данных
7.4. Алгоритм Фокса умножения матриц при блочном разделении данных
7.5. Алгоритм Кэннона умножения матриц при блочном разделении данных
7.6. Краткий обзор лекции
7.7. Обзор литературы
7.8. Контрольные вопросы
7.9. Задачи и упражнения
Лекция 8. Решение систем линейных уравнений
8.1. Постановка задачи
8.2. Алгоритм Гаусса
8.3. Метод сопряженных градиентов
8.4. Краткий обзор лекции
8.5. Обзор литературы
8.6. Контрольные вопросы
8.7. Задачи и упражнения
Лекция 9. Параллельные методы сортировки
9.1. Принципы распараллеливания
9.2. Масштабирование параллельных вычислений
9.3. Пузырьковая сортировка
9.4. Сортировка Шелла
9.5. Быстрая сортировка
9.6. Краткий обзор лекции
9.7. Обзор литературы
9.8. Контрольные вопросы
9.9. Задачи и упражнения
Лекция 10. Параллельные методы на графах
10.1. Задача поиска всех кратчайших путей
10.2. Задача нахождения минимального охватывающего дерева
10.3. Задача оптимального разделения графов
10.4. Краткий обзор лекции
10.5. Обзор литературы
10.6. Контрольные вопросы
10.7. Задачи и упражнения
Лекция 11. Параллельные методы решения дифференциальных уравнений в частных производных
11.1. Последовательные методы решения задачи Дирихле
11.2. Организация параллельных вычислений для систем с общей памятью
11.3. Организация параллельных вычислений для систем с распределенной памятью
11.4. Краткий обзор лекции
11.5. Обзор литературы
11.6. Контрольные вопросы
11.7. Задачи и упражнения
Лекция 12. Программная система ПараЛаб для изучения и исследования методов параллельных вычислений
12.1. Введение
12.2. Общая характеристика системы
12.3. Формирование модели вычислительной системы
12.4. Постановка вычислительной задачи и выбор параллельного метода решения
12.5. Определение графических форм наблюдения за процессом параллельных вычислений
12.6. Накопление и анализ результатов экспериментов
12.7. Выполнение вычислительных экспериментов
12.8. Использование результатов экспериментов
12.9. Краткий обзор лекции
12.10. Обзор литературы
Список литературы
Основная литература
Дополнительная литература
Учебно-методические пособия
Информационные ресурсы сети Интернет