Введение
1 Параллельные вычисления на ЭВМ 13
1.1 Классификация параллельных вычислительных систем 13
1.2 Явный параллелизм и автоматическое распараллеливание 17
1.3 Графические модели параллельных процессов 20
1.4 Взаимодействие параллельных процессов 27
1.4.1 Механизмы синхронизации параллельных процессов 28
1.4.2 Проблема тупиков в параллельных алгоритмах 36
Выводы и основные результаты 38
2 Графическая модель алгоритмов параллельных вычислений 39
2.1 Концептуальное описание граф-модели 39
2.2 Синхронизация между параллельными ветвями граф-модели 43
2.3 Создание граф-моделей параллельных вычислений ...46
2.4 Реализация вычислений, описанных граф-моделью 52
Выводы и основные результаты 56
3 Синхронизация в модели параллельного алгоритма .. 57
3.1 Простейший метод поиска критических данных в модели параллельного алгоритма 59
3.2 Метод поиска критических данных на основе алгебры над способами использования данных 63
3.3 Пример применения формулы над способами использования данных для поиска критических данных 74
3.4 Алгоритм построения и вычисления формул над способами использования данных 75
3.5 Проверка корректности синхронизации граф-модели 87
3.5.1 Метод проверки корректности синхронизации граф-модели 89
3.5.2 Метод поиска тупиков 93
3.6 Пример использования методов поиска критических данных и проверки корректности синхронизации 102
3.6.1 Параллельная модель RS-триггера 102
3.6.2 Модель RS-триггера без синхронизации 109
Выводы и основные результаты 112
4 Программный комплекс моделирования и анализа алгоритмов параллельных вычислений 113
4.1 Архитектура программного комплекса моделирования и анализа алгоритмов параллельных вычислений 113
4.2 Программный комплекс моделирования и анализа алгоритмов параллельных вычислений PGRAPH 1.0 116
4.2.1 Создание моделей параллельных алгоритмов в программном комплексе PGRAPH 1.0 119
4.2.2 Генерация исходных текстов параллельных программ на языке C++ 123
4.2.3 Межмодульный информационный интерфейс 124
4.2.4 Обмен данными между параллельными процессами 126
4.2.5 Модуль передачи сообщений 128
Выводы и основные результаты 129
5 Экспериментальные исследования практической значимости модели 130
5.1 Решение уравнения Лапласа 130
5.1.1 Постановка задачи и последовательный алгоритм решения уравнения Лапласа 130
5.1.2 Параллельный алгоритм решения уравнения Лапласа 132
5.1.3 Экспериментальная проверка эффективности параллельного алгоритма 138
5.2 Распараллеливание алгоритма решения системы дифференциальных уравнений Навье-Стокса 143
5.3 Распараллеливание многосеточных методов 149
Выводы и основные результаты 161
Заключение 163
Список использованных источников 167
Приложение 1. Тексты программ и примеры моделей 177


