欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • CUDA C编程权威指南/高性能计算技术丛书
      • 作者:(美)程润伟//马克斯·格罗斯曼//泰·麦克切尔|译者:颜成钢//殷建//李亮
      • 出版社:机械工业
      • ISBN:9787111565475
      • 出版日期:2017/06/01
      • 页数:412
    • 售价:39.6
  • 内容大纲

        程润伟、马克斯·格罗斯曼、泰·麦克切尔著,颜成钢、殷建、李亮译的《CUDA C编程权威指南/高性能计算技术丛书》用一种易于理解的方式介绍了CUDA的基本知识,教会你并行思维以及在GPU上执行并行算法。每章包含一个特定的主题,包括演示开发过程的实例,让读者探索GPU编程的“硬”和“软”两个方面的知识。
        为了应对工业生产和科学研究的应用需求,计算架构正在向可扩展的并行计算发生转变。本书说明了有效利用计算资源以达到最优性能的必要性,提供了应对这些挑战的先进技术,同时为非并行计算领域的研究人员提供了便利。CUDA编程模型和工具使开发人员可以在一个可扩展的并行计算平台即GPU上编写高性能的应用程序。但是,如果没有丰富的编程经验是很难掌握CUDA的。本书作者是CUDA权威人士,他们通过基本的GPU编程技巧以及专业的CUDA C编程实战来引导读者学习。
  • 作者介绍

  • 目录

    译者序
    推荐序
    自序
    作者简介
    技术审校者简介
    前言
    致谢
    第1章  基于CUDA的异构并行计算
      1.1  并行计算
        1.1.1  串行编程和并行编程
        1.1.2  并行性
        1.1.3  计算机架构
      1.2  异构计算
        1.2.1  异构架构
        1.2.2  异构计算范例
        1.2.3  CUDA:一种异构计算平台
      1.3  用GPU输出Hello World
      1.4  使用CUDA C编程难吗
      1.5  总结
      1.6  习题
    第2章  CUDA编程模型
      2.1  CUDA编程模型概述
        2.1.1  CUDA编程结构
        2.1.2  内存管理
        2.1.3  线程管理
        2.1.4  启动一个CUDA核函数
        2.1.5  编写核函数
        2.1.6  验证核函数
        2.1.7  处理错误
        2.1.8  编译和执行
      2.2  给核函数计时
        2.2.1  用CPU计时器计时
        2.2.2  用nvprof工具计时
      2.3  组织并行线程
        2.3.1  使用块和线程建立矩阵索引
        2.3.2  使用二维网格和二维块对矩阵求和
        2.3.3  使用一维网格和一维块对矩阵求和
        2.3.4  使用二维网格和一维块对矩阵求和
      2.4  设备管理
        2.4.1  使用运行时API查询GPU信息
        2.4.2  确定最优GPU
        2.4.3  使用nvidia-smi查询GPU信息
        2.4.4  在运行时设置设备
      2.5  总结
      2.6  习题
    第3章  CUDA执行模型
      3.1  CUDA执行模型概述
        3.1.1  GPU架构概述
        3.1.2  Fermi架构
        3.1.3  Kepler架构

        3.1.4  配置文件驱动优化
      3.2  理解线程束执行的本质
        3.2.1  线程束和线程块
        3.2.2  线程束分化
        3.2.3  资源分配
        3.2.4  延迟隐藏
        3.2.5  占用率
        3.2.6  同步
        3.2.7  可扩展性
      3.3  并行性的表现
        3.3.1  用nvprof检测活跃的线程束
        3.3.2  用nvprof检测内存操作
        3.3.3  增大并行性
      3.4  避免分支分化
        3.4.1  并行归约问题
        3.4.2  并行归约中的分化
        3.4.3  改善并行归约的分化
        3.4.4  交错配对的归约
      3.5  展开循环
        3.5.1  展开的归约
        3.5.2  展开线程的归约
        3.5.3  完全展开的归约
        3.5.4  模板函数的归约
      3.6  动态并行
        3.6.1  嵌套执行
        3.6.2  在GPU上嵌套Hello World
        3.6.3  嵌套归约
      3.7  总结
      3.8  习题
    第4章  全局内存
      4.1  CUDA内存模型概述
        4.1.1  内存层次结构的优点
        4.1.2  CUDA内存模型
      4.2  内存管理
        4.2.1  内存分配和释放
        4.2.2  内存传输
        4.2.3  固定内存
        4.2.4  零拷贝内存
        4.2.5  统一虚拟寻址
        4.2.6  统一内存寻址
      4.3  内存访问模式
        4.3.1  对齐与合并访问
        4.3.2  全局内存读取
        4.3.3  全局内存写入
        4.3.4  结构体数组与数组结构体
        4.3.5  性能调整
      4.4  核函数可达到的带宽
        4.4.1  内存带宽
        4.4.2  矩阵转置问题
      4.5  使用统一内存的矩阵加法

      4.6  总结
      4.7  习题
    第5章  共享内存和常量内存
      5.1  CUDA共享内存概述
    ……
    第6章  流和并发
    第7章  调整指令级原语
    第8章  GPU加速库和OpenACC
    第9章  多GPU编程
    第10章  程序实现的注意事项
    附录  推荐阅读