易燃物汇聚 YouTube 有声书与书评
基于CUDA的GPU并行程序开发指南 封面

基于CUDA的GPU并行程序开发指南

托尔加·索亚塔

704人在读
30.1万字总字数
¥107定价

内容简介

本书旨在帮助读者了解与基于CUDA的并行编程技术有关的基本概念,并掌握实用c语言进行GPU高性能编程的相关技巧。本书第一部分通过CPU多线程编程解释了并行计算,使得没有太多并行计算基础的读者也能毫无阻碍地进入CUDA天地;第二部分重点介绍了基于CUDA的GPU大规模并行程序的开发与实现,并通过大量的性能分析帮助读者理解如何开发一个好的GPU并行程序以及GPU架构对程序性能的影响;本书的第三部分介绍了一些常用的CUDA库。 本书内容详尽、实例丰富,可作为高等院校相关专业高年级本科生和研究生课程的教材,也可作为有关专业研究生或计算机技术人员的参考书。

读者书评

★★★★★

CUDA入门的好教程 本书浅显易懂地讲了CPU到GPU的硬件架构和并行原理,以及他们连接的PCIe总线,并且用来图像旋转等例子一一演示了如何一步步优化的过程。另外,还介绍了SRAM高速缓存和DDR DRAM内存的原理,了解硬件基础有利于在优化时理解算力和带宽瓶颈。 从CPU处理器硬件架构的整体来看,CPU和GPU芯片还挺相似的: 1. 都由多颗核心构成,核心之间计算独立。GPU是SM,可看做大核心。 2. 有memory control连接内存,以及PCIe连接外设,CPU还有I/O控制器等 3. 设置多级缓存,CPU有L123三级缓存,GPU有两级缓存,其中L3/L2是片级别缓存,所有核心共享,L1是核心内缓存,GPU也用作共享缓存,供核心显式使用,加快效率。 但是核心内部差别较大。 • CPU核心内部是单个处理器,当然后面也有AVX等向量单元。 • CPU第一层核心是SM streaming multipleprocessor流式多处理器,它天然处理并行数据,一个SM现在是包含4个硬件warp,一个warp可以处理32线程,所以一个SM能处理32x4=128个数据。 这是因为GPU天生就是为并行计算设计的,它开始是了游戏渲染中像素计算和3D数据计算,后来逐渐扩展到科学领域,现在在AI计算中大放异彩,这是因为它就适合大数据计算,即数据不同但是计算相同的简单运算。 本书从Fermi介绍到Maxwell,没有涉及到最新的NV GPU,所以没有tensor core,可能成书时间较早。另外,其中的例子不太好,不如直接写技术。但是用来了解GPU原理是值得推荐的。

★★★★★

挺喜欢这本书。虽然讲是比较久之前的架构了,但作者作为讲师对GPU的工作做了形象的比喻,中间列的数字计算都很严谨

书籍信息

作者托尔加·索亚塔
译者唐杰
出版社机械工业出版社
出版时间2019-07-12
ISBN9787111630616
分类计算机-编程设计
格式EPUB
完结状态连载中
章节数475