GPU高级调试与优化

该研习班深入解析GPU编程,涵盖GPU发展简史、硬件接口、软件接口,通过12个主题讲解和8个动手试验,涉及CUDA、OpenCL、NSight等工具,旨在帮助软件工程师和科研人员提升GPU调试和优化能力。
摘要由CSDN通过智能技术生成

[新一期GPU研习班,在上一期基础上增加更多动手试验,并对内容做了多项改进]

GPU的历史很短,只有十几年。但它发展迅猛,凭借强大的并行计算能力和高效率的固定硬件单元,在人工智能、区块链、虚拟和增强现实(VR/AR)、3D游戏和建模、视频编解码等领域大显身手。而且这种趋势还在延续,基于GPU的应用和创新势头正猛。

但是从系统架构来看,针对GPU的架构转型还在进行过程中,目前GPU依然还处于外设的地位,还没有摆脱从属身份。因为这个根本特征,对GPU编程并不像对CPU编程那样直接,而调试和优化GPU程序的难度就更大了,要比CPU程序复杂很多。

本研习班从GPU的发展简史入手,沿着GPU的发展历程,从内部结构、硬件接口和软件接口三个维度螺旋推进,深入解析GPU编程的知识要点和难点。硬件方面,以NVIDIA、AMD、INTEL和ARM四大阵营的GPU产品为例,揭秘GPU的内部架构和执行逻辑,解读其强大并行能力的硬件基础。软件方面,覆盖编程模型(CUDA、OpenCL、OpenVX、DirectX和OpenGL)、驱动模型(DRM和WDDM)和工具三个层面。具体由以下12个主题讲解和8个动手试验组成。

 

时间2018518- 520日(周五-周日)

地点:上海

形式:实战演练、讲解和讨论点评

培训对象:使用GPU进行通用计算和图形加速的软件工程师(开发和测试)、技术经理和科研人员

主办单位:上海曜印网络科技有限公司、高端调试网站(advdbg.org


 

序言:三轮演进 0.5小时)

要点:VGATVGA,硬件加速,2D加速和3D加速,Voodo,从可配置到可编程,G80GPGPUJohn NickollsBrookCUDAGPU的四大功能模块

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

 

-----N-----

 

第一部分:在CUDA-GDB理解CUDA基础(1.5小时)

要点:CUDA简要历史,CUDA的C扩展,kernel函数,WARP,CUDA的线程组织,准备调试环境,单GPU调试和多GPU调试,远程调试,nvcc,-G和-g选项,附加到已经运行的进程,启用kernel初始断点(break on launch),观察源代码和汇编指令,设置断点,单步跟踪,条件断点,观察CUDA的内建变量,PTX指令集,理解WARP、grid、block和thread,Grid-Stride Loops,观察GPU线程,观察GPU的调用栈,观察GPU的寄存器,观察错误信息,从GPU上打印信息

 

试验1:编译和观察简单的CUDA程序

编译一个简单的CUDA程序,使用CUDA SDK中的二进制工具观察其内容,理解CUDA的编译过程和程序文件格式


试验2:改进和调试向量乘法程序

使用CUDA技术编写一个做向量乘法的小程序,理解如何向kernel函数传递参数和传回计算结果


试验3:学习CUDA-GDB的基本用法

编译并调试一个CUDA程序,练习常用的CUDA-GDB扩展命令,理解CUDA编程的关键概念

 

部分:使用NSight调试CUDA

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值