Кирилл Юрьевич Богачёв - Основы параллельного программирования. Учебное пособие
4-е издание, электронноеНазвание: | Основы параллельного программирования. Учебное пособие | |
Автор: | Кирилл Юрьевич Богачёв | |
Жанр: | Учебники и пособия ВУЗов, Современные российские издания, Параллельное и распределенное программирование | |
Изадано в серии: | неизвестно | |
Издательство: | неизвестно | |
Год издания: | 2020 | |
ISBN: | 978-5-00101-758-5 | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Основы параллельного программирования. Учебное пособие"
Данная книга представляет собой введение в методы программирования для параллельных ЭВМ.
Основной ее целью является научить читателя самостоятельно разрабатывать максимально эффективные программы для таких компьютеров.
Вопросы распараллеливания конкретных алгоритмов рассмотрены на многочисленных примерах программ на языке С. В основу книги положен курс лекций для студентов механико-математического факультета МГУ им. М. В. Ломоносова.
Для студентов, аспирантов, научных работников, программистов и всех, кто хочет научиться разрабатывать программы для параллельных ЭВМ.
Читаем онлайн "Основы параллельного программирования. Учебное пособие" (ознакомительный отрывок). Главная страница.
- 1
- 2
.
К. Ю. Богачёв
ОСНОВЫ
параллельного
программирования
4-е издание, электронное
Москва
Лаборатория знаний
2020
УДК 004.65
ББК 32.073
Б73
Б73
Богачёв К. Ю.
Основы параллельного программирования : учебное пособие / К. Ю. Богачёв. — 4-е изд., электрон. — М. : Лаборатория знаний, 2020. — 345 с. — Систем. требования: Adobe
Reader XI ; экран 10".— Загл. с титул. экрана. — Текст :
электронный.
ISBN 978-5-00101-758-5
Данная книга представляет собой введение в методы программирования для параллельных ЭВМ.
Основной ее целью является научить читателя самостоятельно
разрабатывать максимально эффективные программы для таких
компьютеров.
Вопросы распараллеливания конкретных алгоритмов рассмотрены на многочисленных примерах программ на языке С. В основу
книги положен курс лекций для студентов механико-математического факультета МГУ им. М. В. Ломоносова.
Для студентов, аспирантов, научных работников, программистов
и всех, кто хочет научиться разрабатывать программы для параллельных ЭВМ.
УДК 004.65
ББК 32.073
Деривативное издание на основе печатного аналога: Основы
параллельного программирования : учебное пособие / К. Ю. Богачёв. — 2-е изд. — М. : БИНОМ. Лаборатория знаний, 2013. — 342 с. :
ил. — ISBN 978-5-9963-1616-8.
В соответствии со ст. 1299 и 1301 ГК РФ при устранении
ограничений, установленных техническими средствами защиты
авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации
ISBN 978-5-00101-758-5
c Лаборатория знаний, 2015
○
Оглавление
Предисловие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Порядок чтения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
9
Глава 1. Для нетерпеливого читателя . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1. Последовательная программа . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Ускорение работы за счет параллелизма . . . . . . . . . . . . .
1.3. Параллельная программа, использующая процессы .
1.4. Параллельная программа, использующая задачи . . . .
1.5. Параллельная программа, использующая MPI . . . . . .
10
10
12
13
18
21
Глава 2. Пути повышения производительности процессоров . . .
2.1. CISC- и RISC-процессоры . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Основные черты RISC-архитектуры . . . . . . . . . . . . . . . . .
2.3. Конвейеризация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4. Кэш-память . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5. Многопроцессорные архитектуры . . . . . . . . . . . . . . . . . . . .
2.5.1. Основные архитектуры . . . . . . . . . . . . . . . . . . . . . .
2.5.2. Комбинированные архитектуры . . . . . . . . . . . . .
2.5.3. Обанкротившиеся архитектуры . . . . . . . . . . . . . .
2.6. Поддержка многозадачности и многопроцессорности
2.7. Использование параллелизма процессора для повышения эффективности программ . . . . . . . . . . . . . . . . . . . . . . .
24
24
25
26
34
39
39
40
43
44
45
Глава 3. Пути повышения производительности оперативной памяти . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
Глава 4. Организация данных во внешней памяти . . . . . . . . . . . . .
64
4
Оглавление
Глава 5. Основные положения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1. Основные определения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2. Виды ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3. Типы взаимодействия процессов . . . . . . . . . . . . . . . . . . . . .
5.4. Состояния процесса . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
66
72
73
77
Глава 6. Стандарты на операционные системы UNIX . . . . . . . . . .
6.1. Стандарт BSD 4.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2. Стандарт UNIX System V Release 4 . . . . . . . . . . . . . . . . . .
6.3. Стандарт POSIX 1003 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4. Стандарт UNIX X/Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
79
79
80
80
Глава 7. Управление процессами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1. Функция fork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2. Функции execl, execv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3. Функция waitpid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4. Функция kill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5. Функция signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
81
84
84
87
88
Глава 8. Синхронизация и взаимодействие процессов . . . . . . . . . .
8.1. Разделяемая память . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.1.1. Функция shmget . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.1.2. Функция shmat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.1.3. Функция shmctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2. Семафоры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . --">
- 1
- 2
Книги схожие с «Основы параллельного программирования. Учебное пособие» по жанру, серии, автору или названию:
В. А. Грузинцева, В. М. Воронова - Эргономика: учебное пособие к практическим занятиям Жанр: Психология труда, инженерная психология и эргономика Год издания: 2007 |
Сергей Михайлович Коломиец - Линейная алгебра и аналитическая геометрия. Справочные материалы. Учебное пособие для студентов... Жанр: Математика Год издания: 2006 |