图书介绍
高性能科学与工程计算2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (德)海格,(德)韦雷因著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111466529
- 出版时间:2014
- 标注页数:239页
- 文件大小:51MB
- 文件页数:257页
- 主题词:工程计算
PDF下载
下载说明
高性能科学与工程计算PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 当代处理器1
1.1 存储程序的计算机体系结构1
1.2 基于高速缓存的通用微处理器体系结构2
1.2.1 性能指标和基准测试2
1.2.2 晶体管:摩尔定律5
1.2.3 流水线6
1.2.4 超标量10
1.2.5 SIMD10
1.3 存储层次11
1.3.1 高速缓存11
1.3.2 高速缓存映射13
1.3.3 预取15
1.4 多核处理器17
1.5 多线程处理器19
1.6 向量处理器20
1.6.1 设计原理21
1.6.2 最高性能估计22
1.6.3 程序设计23
习题25
第2章 串行代码基本优化技术26
2.1 标量剖析26
2.1.1 基于函数和代码行的程序剖析26
2.1.2 硬件性能计数器29
2.1.3 手工代码插入32
2.2 优化常识32
2.2.1 少做工作32
2.2.2 避免耗时运算32
2.2.3 缩减工作集33
2.3 小方法,大改进33
2.3.1 消除常用子表达式33
2.3.2 避免分支34
2.3.3 使用SIMD指令集34
2.4 编译器作用36
2.4.1 通用优化选项37
2.4.2 内联37
2.4.3 别名37
2.4.4 计算准确性38
2.4.5 寄存器优化39
2.4.6 利用编译日志39
2.5 C++优化40
2.5.1 临时变量40
2.5.2 动态内存管理42
2.5.3 循环与迭代器43
习题43
第3章 数据访存优化45
3.1 平衡分析与lightspeed评估45
3.1.1 基于带宽的性能建模45
3.1.2 STREAM基准测试47
3.2 存储顺序49
3.3 案例分析:Jacobi算法50
3.4 案例分析:稠密矩阵转置53
3.5 算法分类和访存优化56
3.5.1 O(N)/O(N)56
3.5.2 O(N2)/O(N2)57
3.5.3 O(N3)/O(N2)60
3.6 案例分析:稀疏矩阵向量乘61
3.6.1 稀疏矩阵的存储机制62
3.6.2 JDS sMVM优化64
习题66
第4章 并行计算机68
4.1 并行计算模式分类69
4.2 共享存储计算机69
4.2.1 cache一致性69
4.2.2 UMA71
4.2.3 ccNUMA71
4.3 分布式存储计算机73
4.4 混合型系统74
4.5 网络75
4.5.1 网络的基本性能特征75
4.5.2 总线78
4.5.3 交换网络和胖树网络79
4.5.4 Mesh网络81
4.5.5 混合网络82
习题82
第5章 并行性基础83
5.1 为什么并行化83
5.2 并行性83
5.2.1 数据并行性84
5.2.2 功能并行性86
5.3 并行扩展性87
5.3.1 限制并行执行的因素87
5.3.2 可扩展性指标88
5.3.3 简单可扩展性定律89
5.3.4 并行效率90
5.3.5 串行性能与强可扩展性91
5.3.6 改进的性能模型92
5.3.7 选择正确的扩展性基准94
5.3.8 案例分析:低速处理器计算机能否变得更快95
5.3.9 负载不均衡98
习题101
第6章 使用OpenMP进行共享存储并行编程103
6.1 OpenMP简介103
6.1.1 并行执行103
6.1.2 数据作用域105
6.1.3 循环的OpenMP工作共享106
6.1.4 同步107
6.1.5 归约108
6.1.6 循环调度109
6.1.7 任务110
6.1.8 其他方面111
6.2 案例分析:OpenMP并行实现Jacobi算法112
6.3 高级OpenMP:波前并行化114
习题116
第7章 高效OpenMP编程119
7.1 OpenMP程序性能分析119
7.2 性能缺陷120
7.2.1 减轻Open MP共享区开销121
7.2.2 决定短循环的OpenMP开销126
7.2.3 串行化128
7.2.4 伪共享129
7.3 案例分析:并行稀疏矩阵向量乘130
习题133
第8章 ccNUMA体系结构的局部性优化134
8.1 ccNUMA的局部访问134
8.1.1 首次访问方式分配页面135
8.1.2 通过其他方式的局部性访问137
8.2 案例分析:稀疏MVM的ccNUMA优化138
8.3 页面布局缺陷139
8.3.1 非NUMA友好的OpenMP调度139
8.3.2 文件系统高速缓存140
8.4 C++中的ccNUMA问题142
8.4.1 对象数组142
8.4.2 标准模板库144
习题146
第9章 使用MPI进行分布式存储并行内存编程147
9.1 消息传递147
9.2 MPI简介148
9.2.1 一个简单例子148
9.2.2 消息和点对点通信150
9.2.3 集合通信154
9.2.4 非阻塞点对点通信157
9.2.5 虚拟拓扑160
9.3 实例:Jacobi解法器的MPI并行162
9.3.1 MPI实现162
9.3.2 性能特征167
习题170
第10章 高效MPI编程171
10.1 MPI性能工具171
10.2 通信参数174
10.3 同步、串行化和竞争174
10.3.1 隐式串行化和同步174
10.3.2 竞争176
10.4 降低通信开销177
10.4.1 最优化区域分解177
10.4.2 聚合消息180
10.4.3 非阻塞与异步通信181
10.4.4 集合通信183
10.5 理解节点内点对点通信184
习题189
第11章 MPI与OpenMP混合编程190
11.1 基本MPI/OpenMP混合编程模型190
11.1.1 向量模式实现191
11.1.2 任务模式实现191
11.1.3 案例分析:混合Jacobi解法器192
11.2 MPI线程交互分类193
11.3 混合分解及映射195
11.3.1 每个节点一个MPI进程195
11.3.2 每个插槽一个MPI进程196
11.3.3 每个插槽多个MPI进程196
11.4 混合编程的优势和劣势197
11.4.1 改善的收敛速度197
11.4.2 共享高速缓存中的数据重用197
11.4.3 利用额外级别的并行性198
11.4.4 重叠MPI通信和计算198
11.4.5 减少MPI开销198
11.4.6 多级别开销198
11.4.7 向量模式下批量同步通信198
附录A 多核环境中的拓扑和亲缘性199
A.1 拓扑200
A.2 线程和进程分布201
A.2.1 外部亲缘性工具201
A.2.2 程序控制亲缘性203
A.3 非页面首次访问分配策略204
附录B 习题解答206
参考文献221
索引232
热门推荐
- 996676.html
- 1059393.html
- 1477699.html
- 3619662.html
- 933540.html
- 3360658.html
- 1527911.html
- 2307689.html
- 2684100.html
- 3482756.html
- http://www.ickdjs.cc/book_949046.html
- http://www.ickdjs.cc/book_1949771.html
- http://www.ickdjs.cc/book_1542829.html
- http://www.ickdjs.cc/book_2439159.html
- http://www.ickdjs.cc/book_1356570.html
- http://www.ickdjs.cc/book_916072.html
- http://www.ickdjs.cc/book_293170.html
- http://www.ickdjs.cc/book_2671172.html
- http://www.ickdjs.cc/book_459431.html
- http://www.ickdjs.cc/book_2086300.html