图书介绍
OpenMP编译原理及实现技术PDF|Epub|txt|kindle电子书版本网盘下载
![OpenMP编译原理及实现技术](https://www.shukui.net/cover/43/33825295.jpg)
- 罗秋明,明仲,刘刚等编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302272984
- 出版时间:2012
- 标注页数:308页
- 文件大小:15MB
- 文件页数:324页
- 主题词:并行程序-程序设计-教材
PDF下载
下载说明
OpenMP编译原理及实现技术PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇 基础3
第1章 并行计算基础3
1.1基本概念3
1.2并行计算平台4
1.2.1典型结构4
1.2.2SMP6
1.2.3 NUMA8
1.2.4GPU10
1.2.5Cluster11
1.3并行程序设计技术14
1.3.1并行程序设计14
1.3.2 OpenMP17
1.3.3 MPI17
1.3.4 CUDA18
1.3.5 HPF19
1.4本章小结19
习题19
第2章OpenMP编程基础20
2.1 OpenMP基本概念20
2.1.1执行模式20
2.1.2OPenMP编程要素21
2.2OpenMP编程24
2.2.1并行域管理24
2.2.2任务分担25
2.2.3同步34
2.2.4数据环境控制41
2.3本章小结49
习题49
第二篇OpenMP编译53
第3章OpenMP编译53
3.1 OpenMP编译系统53
3.1.1编译系统53
3.1.2目标语言54
3.2 OpenMP编译器结构55
3.2.1功能模块56
3.2.2工作流程59
3.3编译优化60
3.4本章小结60
习题60
第4章 词法与语法分析61
4.1 Lex工具61
4.1.1 Lex的正则表达式62
4.1.2 Lex的使用方法64
4.2 OpenMPC的词法分析66
4.2.1 C语言单词66
4.2.2 OpenMP单词66
4.2.3 OpenMP与C语言公用单词67
4.3 scanner.l68
4.3.1全局声明段68
4.3.2模式匹配规则段70
4.3.3补充函数段75
4.3.4 scanner.c78
4.3.5 scanner.h78
4.4 Yacc工具79
4.4.1 Yacc79
4.4.2 Yacc文件实例81
4.5 OpenMPC语法分析85
4.6本章小结88
习题88
第5章AST的创建90
5.1中间表示90
5.1.1两种中间表示形式90
5.1.2中间表示的选择91
5.2 AST节点数据结构92
5.2.1语句节点92
5.2.2类型说明节点95
5.2.3声明节点96
5.2.4表达式节点97
5.2.5 OpenMP制导节点98
5.3 AST节点维护函数103
5.4 AST的创建104
5.4.1语法制导翻译105
5.4.2例1 OpenMP的for节点107
5.4.3例2 C语言while语句108
5.4.4 Helloworld.c的AST109
5.5符号表111
5.5.1字符串表112
5.5.2符号表112
5.5.3符号表操作114
5.5.4作用域管理115
5.6本章小结115
习题116
第6章 并行域管理117
6.1并行域及其嵌套117
6.2并行域管理119
6.2.1线程无关接口119
6.2.2线程的供给120
6.2.3线程层次关系120
6.2.4并行域代码封装与标识122
6.2.5任务分担问题122
6.3目标代码形式123
6.4 OMPi的并行域管理124
6.4.1 ORT统一界面124
6.4.2并行域代码变换126
6.4.3线程管理与控制127
6.4.4总览132
6.5本章小结133
习题133
第7章 任务分担与线程同步134
7.1 for制导指令134
7.1.1for任务分担134
7.1.2循环变量分解原则135
7.1.3目标代码功能136
7.1.4目标代码形式137
7.1.5OMPi的for制导指令138
7.2 sections制导指令144
7.2.1sections任务分担描述144
7.2.2section划分原则145
7.2.3目标代码功能145
7.2.4目标代码形式145
7.2.5OMPi的sections制导指令147
7.3 single制导指令149
7.4 nowait问题149
7.5归约操作151
7.6线程同步152
7.6.1atomic152
7.6.2 critical153
7.6.3master154
7.6.4 ordered154
7.6.5 nowait155
7.6.6 flush155
7.6.7barrier155
7.7本章小结155
习题156
第8章 数据环境控制157
8.1共享与私有157
8.1.1非全局变量的共享158
8.1.2变量的私有化159
8.1.3 threadprivate子句159
8.1.4基于进程的问题160
8.2并行域边界处理160
8.2.1 private变量160
8.2.2 threadprivate变量160
8.3 OMPi数据环境控制161
8.3.1共享变量161
8.3.2私有变量163
8.3.3线程专有变量166
8.3.4归约变量169
8.4本章小结170
习题170
第9章 产生目标代码171
9.1源代码变换171
9.1.1变换流程171
9.1.2支撑函数173
9.2 AST变换173
9.2.1拼接及创建函数173
9.2.2变换函数集174
9.2.3 OpenMP节点变换177
9.2.4 parallel变换180
9.2.5 for变换183
9.2.6 sections变换185
9.2.7数据环境的处理186
9.3代码优化188
9.4 AST输出189
9.4.1 OMPi的AST输出189
9.4.2 OpenMP节点输出189
9.5本章小结192
第10章运行环境193
10.1重要数据结构193
10.1.1 ORT193
10.1.2线程池与EECB194
10.1.3任务分担结构195
10.1.4共享变量结构197
10.2初始化与退出198
10.2.1 ORT初始化199
10.2.2 EELIB初始化202
10.3并行支撑函数204
10.3.1线程状态管理204
10.3.2并行域管理206
10.3.3任务分担211
10.3.4同步220
10.3.5变量的数据环境221
10.4 OpenMP的API222
10.4.1 API函数222
10.4.2 ICV变量224
10.4.3引用与链接225
10.5环境变量225
10.6本章小结226
第三篇 实践篇229
第11章 编译器及测试工具229
11.1常见OpenMP编译器229
11.1.1 GCC编译器229
11.1.2 OMPi编译器231
11.1.3 Onmi编译器233
11.2性能测试工具235
11.2.1 EPCC Microbenchmark236
11.2.2 NSA Parallel Benchmark242
11.2.3 SPEC OMP2001243
11.2.4 LLNL243
11.3本章小结243
第12章OMPi框架分析245
12.1工作流程245
12.2 OMPi的处理步骤246
12.3代码转换250
12.4进程问题252
12.4.1全局变量252
12.4.2非全局共享变量253
12.5运行环境254
12.5.1初始化254
12.5.2并行域的处理254
12.5.3任务分担254
12.5.4同步256
12.5.5线程专有变量256
12.5.6与EELIB的接口258
12.6源代码文档结构258
12.7后续阅读建议259
12.8本章小结259
第13章ompicc.c源码分析260
13.1 ompicc工作流程260
13.2变量声明及参数处理261
13.3编译部分271
13.3.1文件名处理272
13.3.2预处理273
13.3.3代码变换274
13.3.4 C编译275
13.4链接部分276
13.5主函数部分278
13.5.1参数及配置函数278
13.5.2 main函数281
13.6配置文件283
13.7运行参数与选项287
13.7.1环境变量288
13.7.2命令行参数288
13.7.3配置文件291
13.8本章小结292
第14章ompi.c源码分析293
14.1 ompi工作流程293
14.2 ompi.c294
14.2.1变量声明及辅助函数294
14.2.2 main()函数297
14.2.3错误处理303
14.3 ort.defs303
14.4 ompi.h307
14.5小结308