登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書

『簡體書』C++ AMP:用Visual C++加速大规模并行计算

書城自編碼: 2253470
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: [美]Kate Gregory Ade Miller 著
國際書號(ISBN): 9787115345035
出版社: 人民邮电出版社
出版日期: 2014-03-10
版次: 1
頁數/字數: 300/419000
書度/開本: 16开 釘裝: 平装

售價:HK$ 179.4

share:

** 我創建的書架 **
未登入.


新書推薦:
透过器物看历史(全6册)
《 透过器物看历史(全6册) 》

售價:HK$ 503.7
我在台北故宫博物院读名画
《 我在台北故宫博物院读名画 》

售價:HK$ 112.7
尼罗河往事:古埃及文明4000年
《 尼罗河往事:古埃及文明4000年 》

售價:HK$ 78.2
一个人·谁也不是·十万人(诺贝尔文学奖得主反思自我的巅峰之作)
《 一个人·谁也不是·十万人(诺贝尔文学奖得主反思自我的巅峰之作) 》

售價:HK$ 54.9
重写晚明史(全5册  精装)
《 重写晚明史(全5册 精装) 》

售價:HK$ 781.8
汉末晋初之际政治研究
《 汉末晋初之际政治研究 》

售價:HK$ 135.7
强者破局:资治通鉴成事之道
《 强者破局:资治通鉴成事之道 》

售價:HK$ 82.8
鸣沙丛书·鼎革:南北议和与清帝退位
《 鸣沙丛书·鼎革:南北议和与清帝退位 》

售價:HK$ 121.0

 

建議一齊購買:

+

HK$ 88.5
《术与道 移动应用UI设计必修课》
+

HK$ 89.7
《21天学通Visual Basic(第4版)》
+

HK$ 148.5
《精通 ASP.NET MVC 5》
+

HK$ 384.8
《Perl语言编程(第四版)》
+

HK$ 221.0
《CUDA专家手册:GPU编程权威指南(英伟达公司CUDA首席》
+

HK$ 257.4
《CUDA并行程序设计:GPU编程指南(CUDA社区技术总监撰》
編輯推薦:
1. 本书的两位作者一位是有20多年C++实践经验的讲师、演讲人和作家,一位是微软工作室的首席软件架构师,他们有丰富的实践经验,因此,本书极具实际应用参考价值。
2.本书的目标是帮助C++开发人员在理解C++ AMP核心概念的基础上,理解更高级的功能。书中包含了C++ AMP程序开发的设计思路、使用方法、真实案例及代码示例,并提供了案例的源代码。
3.通过本书的学习,读者能理解如何在应用程序中最好地使用C++ AMP,还能利用Microsoft Visual Studio 2012提供的调试和剖析工具来解决问题、优化性能。
內容簡介:
C++ AMP是Microsoft Visual Studio和C++编程语言的新扩展,用于帮助开发人员充分适应现在和未来的高度并行和异构计算环境。C++ AMP更易用,与C++配合得更好。《C++ AMP:用Visual C++加速大规模并行计算》的目标是帮助C++开发人员在理解C++ AMP核心概念的基础上,掌握更高级的功能。书中包含了C++ AMP程序开发的设计思路、使用方法、真实案例及代码示例,并提供了案例的源代码。通过学习《C++ AMP:用Visual C++加速大规模并行计算》,读者能理解如何在应用程序中最好地使用C++ AMP,还能利用Microsoft Visual Studio 2012提供的调试和剖析工具来解决问题、优化性能。
《C++ AMP:用Visual C++加速大规模并行计算》的两位作者一位是有20多年C++实践经验的讲师、演讲人和作家,一位是微软工作室的首席软件架构师,他们有丰富的实践经验,因此,本书极具实际应用参考价值。《C++ AMP:用Visual C++加速大规模并行计算》适合专业C++异构编程人员及熟悉C++并希望从事并行编程及异构编程的开发人员。
目錄
第1章 C++ AMP概述 1
1.1 为什么选择GPGPU?什么是异构计算? 1
1.1.1 性能提升史 1
1.1.2 异构平台 2
1.1.3 GPU架构 3
1.1.4 通过并行性提升性能的候选方案 4
1.2 CPU并行技术 7
1.2.1 向量化 7
1.2.2 OpenMP 9
1.2.3 并发运行时库ConcRT和并行模式库 10
1.2.4 任务并行库 11
1.2.5 WARP-Windows高级栅格化平台 11
1.2.6 GPU并行技术 12
1.2.7 成功并行化的要求 13
1.3 C++ AMP方法 14
1.3.1 C++ AMP将GPGPU以及更多带进主流 14
1.3.2 C++ AMP是C++,而不是C 14
1.3.3 C++ AMP使用了我们熟识的工具 15
1.3.4 C++ AMP是一个近乎全面的代码库 15
1.3.5 C++ AMP可以生成可移植的、不会过时的执行代码 17
1.4 小结 18
第2章 Nbody案例 19
2.1 运行示例前的准备工作 19
2.2 运行Nbody示例 20
2.3 示例的结构 24
2.4 CPU计算 25
2.4.1 数据结构 25
2.4.2 wWinMain函数 26
2.4.3 OnFrameMove回调函数 26
2.4.4 OnD3D11CreateDevice回调函数 27
2.4.5 OnGUIEvent回调函数 29
2.4.6 OnD3D11FrameRender回调函数 30
2.5 CPU NBody类 30
2.5.1 NBodySimpleInteractionEngine 30
2.5.2 NBodySimpleSingleCore 31
2.5.3 NBodySimpleMultiCore 31
2.5.4 NBodySimpleInteractionEngine::BodyBodyInteraction 32
2.6 C++ AMP计算 33
2.6.1 数据结构 33
2.6.2 CreateTasks 35
2.7 C++ AMP NBody类 37
2.7.1 NBodyAmpSimple::Integrate 37
2.7.2 BodyBodyInteraction 38
2.8 小结 40
第3章 C++ AMP基础 41
3.1 array 41
3.2 accelerator与accelerator_view 43
3.3 index 45
3.4 extent 46
3.5 array_view 46
3.6 parallel_for_each 50
3.7 使用restrictamp标记的函数 52
3.8 在CPU和GPU之间复制数据 54
3.9 数学库函数 56
3.10 小结 57
第4章 分组 58
4.1 使用分组的目的和好处 58
4.2 tile_static内存 60
4.3 tiled_extent 60
4.4 tiled_index 62
4.5 将简单算法改成分组算法 63
4.5.1 使用tile_static内存 64
4.5.2 分组栅和同步 68
4.5.3 完成简单版本到分组版本的修改 70
4.6 分组大小的影响 71
4.7 选择分组大小 74
4.8 小结 75
第5章 分组NBody案例 76
5.1 分组功能对NBody的提速有多大帮助 76
5.2 N体问题的分组算法 77
5.2.1 NBodyAmpTiled类 78
5.2.2 NBodyAmpTiled::Integrate 79
5.3 使用Concurrency Visualizer 83
5.4 选择分组大小 88
5.5 小结 92
第6章 调试 93
6.1 第一步 93
6.1.1 选择GPU调试还是CPU调试 94
6.1.2 参考加速器 97
6.2 GPU调试基础 100
6.2.1 熟悉的窗口和技巧 100
6.2.2 Debug Location工具栏 101
6.2.3 检测竞态 101
6.3 检查线程运行状况 103
6.3.1 线程标记 104
6.3.2 GPU Threads窗口 105
6.3.3 Parallel Stacks窗口 107
6.3.4 Parallel Watch窗口 108
6.3.5 对线程置标记、分组和过滤 110
6.4 施加更多的控制 112
6.4.1 冻结与解冻线程 113
6.4.2 Run Tile to Cursor 114
6.5 小结 116
第7章 优化 117
7.1 一种性能优化方法 117
7.2 分析性能 118
7.2.1 测量内核性能 118
7.2.2 使用Concurrency Visualizer 121
7.2.3 使用Concurrency Visualizer SDK 126
7.3 优化内存访问模式 127
7.3.1 别名和parallel_for_each调用 127
7.3.2 往返GPU的高效数据复制 131
7.3.3 高效加速器全局内存访问 136
7.3.4 结构体数组与数组结构体 139
7.3.5 高效的分组静态内存访问 141
7.3.6 常量内存 145
7.3.7 纹理内存 146
7.3.8 占用比和寄存器 146
7.4 优化计算 147
7.4.1 避免分支代码 147
7.4.2 选择合适的精度 151
7.4.3 数学运算的成本估算 153
7.4.4 循环展开 153
7.4.5 障栅 154
7.4.6 排队模式 157
7.5 小结 159
第8章 性能案例——归约 160
8.1 问题 160
8.2 示例的结构 161
8.2.1 初始化和负载 164
8.2.2 Concurrency Visualizer标记 164
8.2.3 TimeFunc 165
8.2.4 开销 167
8.3 CPU算法 167
8.3.1 串行算法 167
8.3.2 并行算法 168
8.4 C++ AMP算法 168
8.4.1 简单版本 169
8.4.2 使用array_view的简单版本 171
8.4.3 简单优化版本 172
8.4.4 原始分组版本 174
8.4.5 共享内存的分组版本 176
8.4.6 使分支数降至最低的版本 182
8.4.7 消除槽位冲突版本 182
8.4.8 减少停滞线程版本 184
8.4.9 循环展开版本 185
8.4.10 级联归约版本 188
8.4.11 带循环展开的级联归约版本 190
8.5 小结 191
第9章 使用多个加速器工作 192
9.1 选择加速器 192
9.2 使用一个以上的GPU 197
9.3 在加速器之间交换数据 201
9.4 动态负载均衡 206
9.5 交织并行性 209
9.6 回退到CPU执行 210
9.7 小结 211
第10章 Cartoonizer案例 213
10.1 前提条件 213
10.2 运行示例 214
10.3 示例的结构 217
10.4 流水线 218
10.4.1 数据结构 218
10.4.2 CartoonizerDlg::OnBnClickedButtonStart方法 220
10.4.3 ImagePipeline类 221
10.5 流水线卡通化阶段 225
10.5.1 ImageCartoonizerAgent类 225
10.5.2 IFrameProcessor实现 228
10.6 使用多个C++ AMP加速器工作 236
10.6.1 FrameProcessorAmpMulti类 236
10.6.2 复制流水线 239
10.6.3 ImageCartoonizerAgentParallel类 239
10.7 卡通器性能 242
10.8 小结 244
第11章 图形互操作 245
11.1 基础知识 245
11.1.1 norm与unorm 245
11.1.2 短向量类型 247
11.1.3 texture 251
11.1.4 writeonly_texture_view 257
11.1.5 纹理与数组 258
11.2 使用纹理和短向量 259
11.3 HLSL内建函数 262
11.4 DirectX互操作 264
11.4.1 加速器视图与Direct3D设备互操作 264
11.4.2 数组与Direct3D设备互操作 265
11.4.3 纹理与Direct3D纹理资源互操作 266
11.4.4 使用图形互操作库 269
11.5 小结 271
第12章 提示、技巧与最佳实践 273
12.1 处理分组大小不匹配的问题 273
12.1.1 填充分组 275
12.1.2 截取分组 276
12.1.3 对比方法 280
12.2 初始化数组 280
12.3 函数对象与lambda函数 281
12.4 原子操作 282
12.5 Windows 8上其他的C++ AMP功能 285
12.6 超时检测与恢复 286
12.6.1 避免TDR 287
12.6.2 在Windows 8上取消TDR 288
12.6.3 检测TDR和从TDR中恢复 288
12.7 双精度支持 290
12.7.1 有限双精度支持 290
12.7.2 完整双精度支持 290
12.8 在Windows 7上调试 291
12.8.1 配置远程计算机 291
12.8.2 配置项目 291
12.8.3 部署和调试项目 292
12.9 其他调试函数 293
12.10 部署 294
12.10.1 部署应用程序 294
12.10.2 在服务器上运行C++ AMP 294
12.11 C++ AMP与Windows 8的Windows应用商店 296
12.12 在托管代码中使用C++ AMP 296
12.12.1 从.NET应用程序、Windows 7 Windows应用商店或库中调用 297
12.12.2 从C++ CLR应用程序中调用 297
12.12.3 从C++ CLR项目中调用 297
12.13 小结 298
附录 其他资源 299

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.