高性能并行珠玑:多核和众核编程方法计算机与互联网pdf下载pdf下载

高性能并行珠玑:多核和众核编程方法计算机与互联网百度网盘pdf下载

作者:
简介:本篇主要提供高性能并行珠玑:多核和众核编程方法计算机与互联网pdf下载
出版社:互动出版网图书专营店
出版时间:2017-10
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

 书名:  高性能并行珠玑:多核和众核编程方法|6821956
 图书定价:  119元
 图书作者:  (美)詹姆斯·赖因德斯(James Reinders)
 出版社:  机械工业出版社
 出版日期:  2017/10/1 0:00:00
 ISBN号:  9787111580805
 开本:  16开
 页数:  0
 版次:  1-1
 作者简介
High Performance Parallelism Pearls: Multicore and Many-core Programming Approaches
Mustafa AbdulJabbar是沙特阿拉伯阿卜杜拉国王科技大学(KAUST)极限计算研究中心的博士生,他致力于研究大规模算法优化(如FMM),并对弥补基于RMI的执行模型与分子动力学和流体力学中的现实应用程序之间的差距感兴趣。
Jefferson Amstutz是美国SURVICE Engineering公司的一名软件工程师。他探索可视化交互和高性能计算,为美国陆军实验室的应用程序提供支持。他致力于解决领域中各种基于物理的模拟问题,例如弹道脆弱性分析、无线电频率传播和柔体模拟。
Cédric Andreolli是法国Intel公司能源组的一名应用工程师。他帮助石油和天然气行业优化运行在Intel平台上的应用程序。
Edoardo Aprà是美国太平洋西北国家实验室(PNNL)环境分子科学实验室的首席科学家。他的研究方向是高性能计算算法和软件开发(尤其是化学应用)。他是NWChem包中分子密度函数理论(DFT)的主要开发
人员。
Nikita Astafiev是俄罗斯Intel公司Numerics团队的一名高级软件工程师。他致力于研究高度优化的数学函数。他感兴趣的关键领域包括浮点误差自动分析和底层优化。
 内容简介
本书由Intel的技术专家撰写,全面系统地讲解在Intel Xeon处理器和Intel Xeon Phi协处理器上进行并行处理和编程的方法和技术,展示了利用Intel处理器或其他多核处理器系统计算潜力的有效方法。全书包括大量来自多个行业和不同领域的并行编程例子。每章既详细讲述所采用的编程技术,同时展示了其在Intel Xeon Phi协处理器和多核处理器上的高性能结果。大量案例显示的“成功经验”不但展现了这些强大系统的主要特征,而且展示出如何在这些异构系统上保持并行化。
 目录

出版者的话
译者序
推荐序
前 言
作者简介
第1章 引言 1
1.1 学习成功经验 1
1.2 代码现代化 1
1.3 并发算法现代化 1
1.4 向量化和数据局部性现代化 2
1.5 理解功耗使用 2
1.6 ISPC和OpenCL 2
1.7 Intel Xeon Phi协处理器特性 2
1.8 众核和新异构系统 2
1.9 书名中没有Xeon Phi与新异构架构编程 3
1.10 众核的未来 3
1.11 下载 3
1.12 更多信息 4
第2章 从正确到正确&高效:Godunov
格式的Hydro2D案例学习 5
2.1 现代计算机上的科学计算 5
2.1.1 现代计算环境 6
2.1.2 CEA的Hydro2D 6
2.2 冲击流体动力学的一种数值方法 7
2.2.1 欧拉方程 7
2.2.2 Godunov方法 7
2.2.3 哪里需要优化 9
2.3 现代计算机架构的特征 9
2.3.1 面向性能的架构 9
2.3.2 编程工具和运行时 10
2.3.3 计算环境 11
2.4 通向高性能的路 11
2.4.1 运行Hydro2D 11
2.4.2 Hydro2D的结构 12
2.4.3 优化 15
2.4.4 内存使用 16
2.4.5 线程级并行 17
2.4.6 算术效率和指令级并行 24
2.4.7 数据级并行 26
2.5 总结 32
2.5.1 协处理器与处理器 32
2.5.2 水涨船高 32
2.5.3 性能策略 33
2.6 更多信息 34
第3章 HBM上的SIMD与并发优化 36
3.1 应用程序:HIROMB-BOOS-MODEL 36
3.2 关键应用:DMI 36
3.3 HBM执行配置文件 37
3.4 HBM优化综述 38
3.5 数据结构:准确定位位置 38
3.6 HBM上的线程并行 41
3.7 数据并行:SIMD向量化 45
3.7.1 零散的可优化部分 46
3.7.2 过早抽象是万恶之源 48
3.8 结果 50
3.9 详情分析 51
3.10 处理器与协处理器可扩展性对比 52
3.11 CONTIGUOUS属性 53
3.12 总结 54
3.13 参考文献 54
3.14 更多信息 55
第4章 流体动力学方程优化 56
4.1 开始 56
4.2 1.0版本:基础版本 57
4.3 2.0版本:线程盒 59
4.4 3.0版本:栈内存 63
4.5 4.0版本:分块 63
4.6 5.0版本:向量化 64
4.7 Intel Xeon Phi协处理器上的运行结果 68
4.8 总结 69
4.9 更多信息 70
第5章 分阶段准同步栅栏 71
5.1 如何改善代码 74
5.2 如何进一步改善代码 74
5.3 超线程方阵 74
5.4 关于该方案哪些地方不是**的 75
5.5 超线程方阵编码 76
5.5.1 如何确定内核间兄弟线程和内核内HT线程 77
5.5.2 超线程方阵手动分区方法 77
5.5.3 吸取教训 79
5.6 回到工作 80
5.7 数据对齐 81
5.7.1 尽可能使用对齐的数据 81
5.7.2 冗余未必是件坏事 81
5.8 深入讨论分阶段准同步栅栏 84
5.9 如何节省时间 86
5.10 几个留给读者的优化思考 90
5.11 类似Xeon Phi协处理器的Xeon主机性能优化 91
5.12 总结 92
5.13 更多信息 92
第6章 故障树表达式并行求解 93
6.1 动机和背景 93
6.1.1 表达式 93
6.1.2 表达式选择:故障树 93
6.1.3 程序实例中的故障树:基本模拟 93
6.2 实例实现 94
6.3 其他因素 101
6.4 总结 101
6.5 更多信息 101
第7章 深度学习的数值优化 102
7.1 拟合目标函数 102
7.2 目标函数与主成分分析 105
7.3 软件及样例数据 106
7.4 训练数据 109
7.5 运行时间 109
7.6 扩展结果 111
7.7 总结 111
7.8 更多信息 112
第8章 优化聚集/分散模式 113
8.1 聚集/分散在Intel架构下的说明 114
8.2 聚集/分散模式在分子动力学中的应用 115
8.3 优化聚集/分散模式 117
8.3.1 提高时间和空间的局部性 117
8.3.2 选择一种适当的数据布局:AoS与SoA 118
8.3.3 AoS和SoA之间的动态转换 119
8.3.4 分摊聚集/分散和转换的开销 122
8.4 总结 123
8.5 更多信息 123
第9章 N体问题直接法的众核实现 125
9.1 N体模拟 125
9.2 初始解决方案 125
9.3 理论极限 126
9.4 降低开销和对齐数据 128
9.5 优化存储层次 131
9.6 改进分块 133
9.7 主机端的优化 135
9.8 总结 136
9.9 更多信息 136
第10章 N体方法 137
10.1 快速N体方法和直接N体内核 137
10.2 N体方法的应用 138
10.3 直接N体代码 138
10.4 性能结果 141
10.5 总结 142
10.6 更多信息 142
第11章 使用OpenMP 4.0实现动态负载均衡 144
11.1 **化硬件利用率 144
11.2 N体内核 146
11.3 卸载版本 149
11.4 第一个处理器与协处理器协作版本 150
11.5 多协处理器版本 152
11.6 更多信息 155
第12章 并发内核卸载 156
12.1 设定上下文 156
12.1.1 粒子动力学 156
12.1.2 本章结构 157
12.2 协处理器上的并发内核 158
12.2.1 协处理器设备划分和线程关联 158
12.2.2 并发数据传输 163
12.3 在PD中使用并发内核卸载进行作用力计算 166
12.3.1 使用牛顿第三定律并行评估作用力 166
12.3.2 实现作用力并发计算 167
12.3.3 性能评估:之前与之后 171
12.4 总结 173
12.5 更多信息 174
第13章 MPI和异构计算 175
13.1 现代集群中的MPI 175
13.2 MPI任务地点 176
13.3 DAPL提供者的选择 180
13.3.1 第一个提供者OFA-V2-MLX4_0-1U 180
13.3.2 第二个提供者ofa-v2-scif0以及对节点内部结构的影响 180
13.3.3 最后一个提供者 181
13.3.4 混合程序的可扩展性 182
13.3.5 负载均衡 184
13.3.6 任务和线程映射 184
13.4 总结 185
13.5 致谢 185
13.6 更多信息 185
第14章 Intel Xeon Phi协处理器功耗分析 186
14.1 功耗分析 186
14.2 用软件测量功耗和温度 187
14.2.1 创建功耗和温度监控脚本 188
14.2.2 使用micsmc工具创建功耗和温度记录器 189
14.2.3 使用IPMI进行功耗分析 190
14.3 基于硬件的功耗分析方法 192
14.4 总结 196
14.5 更多信息 196
第15章 集成Intel Xeon Phi协处理器至集群环境 197
15.1 早期探索 197
15.2 Beacon系统的历史 197
15.3 Beacon系统的架构 198
15.3.1 硬件环境 198
15.3.2 软件环境 198
15.4 Intel MPSS安装步骤 199
15.4.1 系统准备 199
15.4.2 安装Intel MPSS栈 200
15.4.3 生成和定制配置文件 201
15.4.4 MPSS升级 204
15.5 建立资源和工作负载管理器 204
15.5.1 TORQUE 204
15.5.2 序言程序 205
15.5.3 尾声程序 206
15.5.4 TORQUE/协处理器集成 207
15.5.5 Moab 207
15.5.6 提高网络局部性 207
15.5.7 Moab/协处理器集成 207
15.6 健康检查和监控 208
15.7 常用命令脚本化 209
15.8 用户软件环境 210
15.9 今后的方向 211
15.10 总结 212
15.11 致谢 ...
 编辑推荐
本书将使为Intel Xeon Phi产品开发高层并行性(包括**编程)更加简单。Intel Xeon和Intel Xeon Phi系列之间的通用编程方法对整个科学和工程领域都是有利的,相同的程序可以实现多核和众核的并行可扩展性和向量化。
—— 选自推荐序,Sverre Jarp, CERN
本书展示了如何借助同种编程方法来利用处理器和协处理器上的并行性,展示了如何有效地利用配备Intel Xeon Phi协处理器和Intel Xeon处理器或者其他多核处理器的系统的能力。本书包括多个行业和领域(如化学、工程以及环境科学)中成功的编程示例。每一章都包括所使用的编程技巧的详细讲解,并且展示了在Intel Xeon Phi协处理器和多核处理器上的高性能结果。这些示例不仅展示了这些高性能系统的特征,还给出了利用这些新型异构系统间并行性的方法。
本书特色
推动一致的基于标准的编程,展示多核处理器和Intel Xeon Phi协处理器上高性能编码的细节。
涵盖多个垂直领域的示例,展示真实应用代码的并行优化。
源代码可供下载,以便于未来进一步研究。
作者简介
詹姆斯·赖因德斯(James Reinders) Intel公司软件总监,首席技术布道师。参与多个旨在加强并行编程在工业界应用的工程研究和教育项目。他对多个项目做出了贡献,包括世界上首例TFLOPS级超级计算机(ASCI Red)和世界上首例TFLOPS级微处理器(Intel Xeon Phi协处理器)。
吉姆·杰弗斯(Jim Jeffers) Intel公司技术计算组的首席工程师和工程经理。目前,Jim是Intel技术计算可视化团队的领导。