目录 1
第一章 并行处理概述 1
1.1 并行性概念 1
1.2 计算机系统中并行性的发展 4
一、并行性开发的途径 4
二、计算机系统的并行性发展 5
1.3 并行处理计算机的结构及要研究的问题 8
1.4 计算机系统结构的分类 9
一、Flynn分类法 10
二、Feng(冯氏)分类法 11
三、H?ndler(汉德勒)分类法 13
1.5 并行处理技术的应用 14
一、预测模型和模拟 14
二、工程设计和自动化 14
三、能源勘探 15
四、医学、军事和基础研究 15
习题 16
第二章 流水线处理机和向量处理机 17
2.1 流水的基本原理和流水线的分类 17
一、流水处理的基本原理 17
二、流水线的分类 18
一、吞吐率 21
2.2 流水线处理机的主要性能 21
二、效率 23
三、流水线工作举例 24
2.3 流水的相关处理和控制机构 25
一、流水线中的相关 25
二、局部性相关的处理 27
三、全局性相关的处理 30
四、流水机器的中断处理 32
五、流水线调度 32
2.4 向量的流水处理与向量处理机 36
一、向量的流水处理 36
二、向量处理机 37
习题 40
第三章 阵列处理机 43
3.1 阵列处理机的构形与特点 43
一、阵列处理机的基本构形 43
二、阵列处理机的特点 44
3.2 阵列处理机的互连网络 46
一、概述 46
二、基本的单级互连网络 47
三、多级互连网络 49
四、全排列网络 53
3.3 并行存贮器的无冲突访问 54
一、ILLIACⅣ阵列处理机 56
3.4 阵列处理机举列 56
二、MPP位平面阵列处理机 58
三、BSP科学处理机 60
习题 61
第四章 多处理机 64
4.1 多处理机的特点及主要技术问题 64
4.2 多处理机的硬件结构 66
一、紧耦合多处理机 66
二、松耦合多处理机 68
4.3 多处理机的机间互连形式 69
一、总线形式 69
二、环形互连 70
三、交叉开关形式 71
四、多端口存贮器形式 72
五、开关枢纽结构形式 72
4.4 多处理机的存贮器组织 74
一、并行主存贮器的构成 74
二、Cache的一致性问题 76
习题 79
第五章 脉动阵列机和数据流机 80
5.1 脉动阵列机 80
一、脉动阵列结构的基本工作原理 80
二、面向特定算法的脉动阵列结构 82
三、通用的脉动阵列结构 84
5.2 数据流机 86
一、数据驱动的概念 86
二、数据流程序图和语言 88
三、数据流计算机的结构 93
四、数据流机器存在的问题 97
习题 97
第六章 并行程序设计语言和并行编译程序 99
6.1 向量处理基础 99
一、基本概念 99
二、向量指令 100
三、向量化方法 101
6.2 程序相关图 104
一、基本概念 104
二、数据相关性 106
三、程序相关图的构造法 107
四、相关环路 107
6.3 程序相关图的优化技术 108
一、语句重排 108
二、语句替代 109
三、部分向量化 110
四、相关环路分割 111
五、递推法和循环分配法 113
六、嵌套循环向量化 114
七、循环中IF语句的处理 115
八、波前沿法 116
6.4 并行语言与并行编译技术 117
一、并行程序设计语言 117
二、并行编译技术 119
三、并行程序设计支撑环境 120
6.5 智能编译程序的设计与实现 120
一、系统的总体结构 120
二、智能编译程序的工作过程 121
习题 123
三、系统的利用 123
第七章 多处理机操作系统 126
7.1 概述 126
一、多处理机操作系统的复杂性 126
二、多处理机操作系统的主要特征 127
三、多处理机操作系统的分类 128
7.2 任务分配与调度策略 129
一、基本概念 129
二、任务静态分配算法 130
三、动态进程调度 132
一、同步机构与同步算法 135
7.3 进程间的同步 135
二、集中式同步 136
三、分布式同步 138
7.4 进程间的通信 140
一、基于消息传递的通信方式 140
二、远程过程调用 143
7.5 多机操作系统的发展 145
一、UNIX的标准化 145
二、UNIX的并行化 146
三、UNIX并行化需要解决的问题 146
习题 147
一、并行算法的定义 148
第八章 并行算法的一般概念 148
8.1 什么是并行算法 148
二、计算问题的分类 149
三、并行算法和串行算法的关系 150
四、研究并行算法的几种途径 150
五、设计并行算法应注意的几个问题 150
8.2 并行算法度量和评价的基本参数 151
一、运行时间 151
二、处理机台数 151
三、并行度 151
五、成本 152
四、加速比与效率 152
六、并行算法的复杂性 153
8.3 并行算法的复杂性 153
一、时间复杂性和空间复杂性 153
二、阶的表示 153
三、算法复杂性分析 153
四、MIMD计算机上算法复杂性分析 156
8.4 并行算法的分类 157
一、并行算法的分类 157
二、MIMD算法的分类 157
习题 158
第九章 SIMD算法 159
9.1 SIMD计算机上的求和算法 159
一、SIMD-CC模型上的求和算法 159
二、SIMD-SE模型上的求和算法 159
三、SIMD-MC2模型上的求和算法 160
9.2 矩阵乘法 161
一、时间复杂性为O(n2)的矩阵乘法 161
二、时间复杂性为O(nlogn)的矩阵乘法 162
三、二维阵列的矩阵乘法 164
9.3 线性递归问题 165
一、基本概念 165
二、倍增法 166
三、分段法 169
9.4 线性代数方程组的并行算法 172
一、高斯消去法 172
二、列主元消去法 173
三、雅可比迭代法 174
四、塞德尔迭代法 174
五、QIF算法 175
9.5 稀疏线性代数方程组的并行求解 177
一、消去法 178
二、奇偶消去法 179
习题 180
一、一般算术表达式值的并行计算 182
二、同步MIMD算法的同步机制 182
第十章 MIMD算法 182
10.1 同步MIMD算法 182
三、用区间分割法求代数方程的根 184
四、用牛顿法求代数方程的根 186
五、用同步迭代法解偏微分方程的边界值问题 186
10.2 异步MIMD算法 188
一、异步迭代法 188
二、MIMD并行排序算法 191
习题 195
主要参考文献 196