图书介绍

OPENACC并行编程实战PDF|Epub|txt|kindle电子书版本网盘下载

OPENACC并行编程实战
  • 何沧平著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111549659
  • 出版时间:2017
  • 标注页数:265页
  • 文件大小:94MB
  • 文件页数:276页
  • 主题词:图形软件-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

OPENACC并行编程实战PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 并行编程概览1

1.1 加速器产品1

1.1.1 英伟达GPU3

1.1.2 英特尔至强融核处理器9

1.2 并行编程语言12

1.3 CUDA C14

1.3.1 线程组织方式16

1.3.2 运行过程18

1.3.3 内存层级20

1.3.4 性能优化技术21

第2章 OpenACC概览22

2.1 OpenACC规范的内容23

2.1.1 抽象加速器模型25

2.1.2 存储模型25

2.1.3 计算执行模型26

2.2 OpenACC 2.5 规范29

第3章 OpenACC计算构件36

3.1 条件编译37

3.2 导语格式38

3.3 计算构件kernels40

3.3.1 构件内有1个循环41

3.3.2 构件内2个循环44

3.3.3 构件内二重嵌套循环45

3.3.4 kernels构件内三重嵌套循环48

3.4 loop构件52

3.4.1 independent子语53

3.4.2 reduction归约子语57

3.4.3 不常用的子语64

3.5 计算构件parallel66

3.5.1 gang单独模式68

3.5.2 gang分裂模式70

3.5.3 二重循环73

3.5.4 三重循环75

3.6 组合导语77

3.7 案例研究:Jacobi迭代78

3.7.1 CPU上并行化84

3.7.2 GPU上并行化88

3.8 原子操作:atomic导语91

第4章 数据管理97

4.1 数据属性、数据区域和数据生存期99

4.2 计算构件的伴随数据区域100

4.2.1 引用计数101

4.2.2 present子语102

4.2.3 copy子语104

4.2.4 copyin子语105

4.2.5 copyout子语107

4.2.6 create子语108

4.2.7 数据子语内的子数组111

4.2.8 private私有子语112

4.2.9 承上私有firstprivate子语115

4.2.10 带有预置数据属性的变量116

4.2.11 default默认子语117

4.2.12 案例研究:Jacobi迭代优化数据传输117

4.3 data构件119

4.3.1 数据管理功能119

4.3.2 deviceptr子语121

4.3.3 案例研究:data构件迭代优化Jacobi数据传输122

4.4 enter data导语和exit data导语128

4.4.1 C++类的数据生存期129

4.4.2 传递设备数据指针133

4.5 update导语135

4.6 declare导语138

4.6.1 device resident子语139

4.6.2 create子语140

4.6.3 link子语140

4.6.4 用法举例141

4.7 特定设备的子语146

第5章 计算区域内的过程调用148

5.1 routine导语150

5.2 seq子语(C版)151

5.3 seq子语(Fortran版)152

5.4 routine(名字)154

5.5 bind子语155

5.6 用子语指定并行级别155

5.6.1 vector级别并行156

5.6.2 worker、worker级别并行159

5.7 计算圆周率π160

第6章 高级特性164

6.1 异步操作164

6.1.1 async子语165

6.1.2 wait子语165

6.1.3 wait导语166

6.2 设备计算与主机计算重叠166

6.3 设备上同时执行多个队列169

6.4 重叠计算与数据传输172

6.4.1 步骤0:串行代码174

6.4.2 步骤1:计算并行化177

6.4.3 步骤2:分块计算178

6.4.4 步骤3:数据分块传输179

6.4.5 步骤4:重叠计算与传输181

6.5 双向传输183

6.6 多个设备同时运算185

6.6.1 环境变量186

6.6.2 运行过程中选择设备186

6.6.3 OpenMP调动多个设备195

第7章 与GPU生态环境互操作202

7.1 OpenACC调用CUDA C203

7.2 OpenACC调用CUDA Fortran205

7.3 CUDA C调用OpenACC207

7.4 捆绑主机地址与设备地址208

7.5 CUDA Fortran调用OpenACC210

7.6 OpenACC(C)调用cuBLAS211

7.7 OpenACC(Fortran)调用cuBLAS212

第8章 运行时函数213

8.1 运行时库的定义213

8.2 运行时库例程215

8.2.1 acc_get_num_devices215

8.2.2 acc_set_device_type216

8.2.3 acc_get_device_type217

8.2.4 acc_set_device_num217

8.2.5 acc_get_device_num218

8.2.6 acc_init218

8.2.7 acc_shutdown219

8.2.8 acc_async_test219

8.2.9 acc_async_test_all220

8.2.10 acc_wait220

8.2.11 acc_wait_async221

8.2.12 acc_wait_all221

8.2.13 acc_wait_all_async222

8.2.14 acc_get_default_async222

8.2.15 acc_set_default_async223

8.2.16 acc_on_device223

8.2.17 acc_malloc224

8.2.18 acc_free224

8.2.19 acc_copyin225

8.2.20 acc_create226

8.2.21 acc_copyout227

8.2.22 acc_delete228

8.2.23 acc_update_device229

8.2.24 acc_update_self230

8.2.25 acc_map_data231

8.2.26 acc_unmap_data231

8.2.27 acc_deviceptr231

8.2.28 acc_hostptr232

8.2.29 acc_is_present232

8.2.30 acc_memcpy_to_device233

8.2.31 acc_memcpy_from_device233

8.2.32 acc_memcpy device234

第9章 开发环境搭建235

9.1 Windows 7236

9.2 Linux(rhel)244

9.3 编译工具、特性支持度247

第10章 在神威·太湖之光上使用OpenACC253

10.1 SW26010众核处理器253

10.2 存储模型254

10.3 执行模型256

10.4 数据管理256

附录 著名超级计算机259

后记 码农的悲喜264

热门推荐