![]() 作者:Benedict R. Gaster/Lee Howes/David R. Kaeli/Perhaad Mistry/Dana Schaa 出版社: 清华大学出版社 原作名: Heterogeneous Computing with OpenCL 译者:张云泉/张先轶/龙国平/姚继锋 出版年: 2012-6 页数: 271 定价: 76.00元 装帧: 精装 ISBN: 9787302286851 内容简介 · · · · · ·《OpenCL异构计算》讲解了OpenCL和如何为复杂的异构系统(多核处理器、GPU和APU)进行并行编程。OpenCL是为支持多平台设计的,受行业广泛支持,有助于帮助读者为异构环境编写高性能应用程序。 本书由并行计算和OpenCL社区中的领头人所撰写,可帮助读者体验OpenCL从而了解大量基础的并行算法。书中探索了内存空间、优化技术、图形的互操作、性能扩展,调试和性能剖析等。 本书读者对象为软件工程师、程序员、硬件工程师、高年级本科生/研究生,可供并行编程课程使用,包含有详细的案例,附有额外的网上练习和其他支持材料。 本书特色 · 解释OpenCL并行编程的原理和策略,从理解四大抽象模型开始,一直介绍到测试和调试完整的应用 · 覆盖图像处理、Web插件、粒子模拟、视频编辑和性能优化等主题 · 展示OpenCL如何映射到目标体系结构,并解释一些映射到... 作者简介 · · · · · ·Benedict R. Gaster是一位致力于研究下一代异构处理器编程模型的软件架构师,具体研究新一代处理器(同时包含CPU和GPU加速器)进行并行编程的高层次抽象。他对OpenCL的设计做出了广泛的贡献,并在Khronos Group(科纳斯组织)的开放标准联盟中代表AMD。他因为类型系统的可扩展标记和变量的研究成果而获得计算机科学博士学位。 Lee Howes已经在AMD工作两年多,目前的研究集中于未来异构计算的编程模型。他的研究举在于如何以声明方式表示迭代域到数据的映射,用通俗易懂的方式向开发人员说明复杂的架构概念和优化技术,这两者都通过编程模型的改进和教育来实现。他因为这一领域的研究成果而获得伦敦帝国学院计算机科学的博士学位。 David Kaeli获得罗格斯大学电气工程专业的学士和博士学位,雪城大学计算机工程专业的硕士学位。他是东北大学工... 目录 · · · · · ·《opencl异构计算》第1章 并行编程入门 1 引言 1 opencl 1 本书目标 2 并行思维 2 · · · · · ·() 《opencl异构计算》 第1章 并行编程入门 1 引言 1 opencl 1 本书目标 2 并行思维 2 并发编程模型和并行编程模型 6 线程和共享内存 9 消息传递通信 9 不同的并行粒度 10 数据共享和同步 11 本书结构 11 参考文献 12 扩展阅读和相关网站 13 第2章 opencl简介 15 引言 15 opencl标准 15 opencl 规范 15 kernel和opencl执行模型 16 平台和设备 19 .主机-设备交互 19 执行环境 21 上下文 22 命令队列 22 事件 23 内存对象 23 flush命令和finish命令 26 新建一个opencl程序对象 26 opencl的kernel 27 内存模型 29 编写kernel 31 向量相加实例的完整代码 32 小结 39 参考文献 39 第3章 opencl设备架构 41 引言 41 硬件权衡 41 性能随频率的提升及其限制 43 超标量执行 44 vliw 44 simd和向量处理 47 硬件多线程 48 多核架构 51 集成:片上系统和apu 53 高速缓存层次和内存系统 54 架构设计空间 55 cpu设计 56 gpu体系结构 60 apu和类apu的设计 63 小结 64 参考文献 65 第4章 opencl基本实例 67 引言 67 应用实例 67 简单的矩阵相乘 67 图像卷积实例 77 小结 85 第5章 opencl的并发与执行模型 87 引言 87 kernel,work_item,workgroup和 执行域 87 opencl同步:kernel,fence和barrier 90 队列与全局同步 94 opencl内存一致性 96 事件 96 命令barrier与marker 108 主机端内存模型 109 buffer对象 110 image对象 113 设备端内存模型 115 设备端宽松的内存一致性 116 全局内存 117 本地内存 119 常量内存 121 私有内存 122 小结 122 第6章 opencl在cpu/gpu 平台上的实现 123 引言 123 opencl在amd phenom ii x6上的 实现 123 opencl在amd radeon hd6970 gpu上的实现 128 多线程和内存系统 130 基于clause的simd执行 132 资源分配 137 opencl的内存性能 139 opencl全局内存 139 本地内存——软件管理的cache 142 小结 148 参考文献 149 第7章 opencl案例学习1:卷积 151 引言 151 计算卷积的kernel 151 选择合适的workgroup大小 151 将数据缓存到本地内存 154 执行卷积 160 小结 161 代码清单 162 主机端代码 162 kernel代码 166 参考文献 171 第8章 opencl案例学习2: 视频处理 173 引言 173 获得视频帧 173 cpu上的解码 174 在gpu上解码视频 175 在opencl中处理一个视频 179 在多个视频上处理多个不同effect 180 事件链 180 最终输出显示到屏幕 181 opencl/opengl协同工作能力 181 小结 184 第9章 opencl案例学习3: 直方图 185 引言 185 选择适量的work-group 185 选择最优的work-group大小 186 全局内存访存优化 187 使用原子操作计算局部直方图 189 本地内存访存优化 190 局部直方图的规约 192 全局规约 193 完整的kernel代码 193 性能和小结 196 第10章 opencl案例学习4: 混合粒子模拟 197 引言 197 计算概览 197 gpu实现 200 创建buffer 200 构造加速结构 201 计算碰撞 201 合成 202 cpu实现 202 负载均衡 203 性能和小结 204 生成均匀网格的kernel代码 205 粒子模拟的kernel代码 206 第11章 opencl扩展 211 引言 211 扩展机制概览 211 设备拆分 214 双精度 225 参考文献 233 第12章 opencl的性能剖析和 调试 235 引言 235 基于事件的剖析 236 amd app profiler 238 收集opencl程序轨迹 239 收集opencl gpu kernel性能 计数器 242 amd app kernelanalyzer 243 演示amd app profiler 245 启动amd app profiler 245 使用应用程序的轨迹数据 以发现性能瓶颈 245 使用gpu性能计数器发现kernel的 性能瓶颈 247 调试opencl应用程序 248 gdebugger概览 249 使用gdebugger调试并行opencl 应用程序 249 amd printf扩展 251 小结 253 第13章 webcl 255 引言 255 框架设计 256 webcl 实验性实现 257 firefox扩展 257 连接javascript和opencl 258 webcl动手练习 260 web照片编辑器 264 讨论 266 小结 268 参考文献 268 扩展阅读和相关网站 269 索引 271 · · · · · · () |
原以为会很枯燥
大大点赞!
值得一看。挺有意思的。
怎么说呢,感觉这本书涉及的方方面面太多