课程简介

课程面向使用GPU进行通用计算和图形加速的软件工程师(开发和测试)、技术经理和科研人员。通过12个主题讲解和6个动手试验,从GPU的发展简史入手,从内部结构、硬件接口和软件接口三个维度深入解析GPU编程的知识要点和难点。

硬件方面,以NVIDIA、AMD、INTEL和ARM四大阵营的GPU产品为例,揭秘GPU的内部架构和执行逻辑。

软件方面,深入解析OpenVX、OpenCL、CUDA、DirectX和OpenGL等编程接口,以及LINUX和Windows操作系统下的软件栈,并介绍优化和调试GPU程序的常用工具和方法。


课程概述

N篇

  • 第一部分:在CUDA-GDB理解CUDA基础(1.5小时)
  • 试验1:熟悉CUDA-GDB的基本用法
  • 第二部分:使用NSight调试CUDA程序(1.5小时)
  • 试验2:使用Visual Studio和NSight调试CUDA程序
  • 第三部分:在调试器中理解显存和CUDA编程的高级技巧(1.5小时)
  • 第四部分:使用NSight调试图形程序(1.5小时)
  • 试验3:使用NSight调试3D图形程序

I篇

  • 第六部分:在Code-Builder中理解OpenCL(1小时)
  • 第七部分:计算机视觉加速接口(OpenVX)和英特尔实现(1.5小时)
  • 试验4:使用Code-Builder调试人脸检测程序
  • 第八部分:英特尔GPU综述(50分钟)

优化篇

  • 第九部分:使用CUDA profiler优化CUDA程序(1.5小时)
  • 试验5:使用nvprof和Visual Profiler优化CUDA程序
  • 第十部分:使用GPUView分析CPU与GPU交互(1小时)
  • 试验6:使用GPUView观察GPU的工作状态

A篇

  • 第十一部分:AMD GPU和HSA(1.5小时)
  • 第十二部分:ARM GPU(1.5小时)


张银奎
系统内核专家,《软件调试》作者。资深软件架构师,微软全球最有价值技术专家(MVP)。《软件调试》、《格蠹汇编》作者,《程序员》杂志调试之剑栏目作者。1996年毕业于上海交通大学,在软件产业工作20年,曾在Intel任软件架构师、开发经理、项目经理等职务,对操作系统内核、驱动程序、虚拟化技术、云计算、软件调优,尤其是软件调试有深入研究。
微信客服
电话客服:400-821-5876