感谢您发送咨询!我们的团队成员将很快与您联系。
感谢您发送预订!我们的团队成员将很快与您联系。
课程大纲
介绍
- 什么是ROCm?
- 什么是HIP?
- ROCm 与 CUDA 与 OpenCL
- ROCm 和 HIP 功能和体系结构概述
- ROCm for Windows 与 ROCm 的 Linux
安装
- 在 Windows 上安装 ROCm
- 验证安装并检查设备兼容性
- 在 Windows 上更新或卸载 ROCm
- 常见安装问题疑难解答
开始
- 在 Windows 上使用 Visual Studio 代码创建新的 ROCm 项目
- 浏览项目结构和文件
- 编译并运行程序
- 使用 printf 和 fprintf 显示输出
ROCm API
- 在主机程序中使用 ROCm API
- 查询设备信息和功能
- 分配和解除分配设备内存
- 在主机和设备之间复制数据
- 启动内核并同步线程
- 处理错误和异常
HIP 语言
- 在设备程序中使用 HIP 语言
- 编写在 GPU 上执行并操作数据的内核
- 使用数据类型、限定符、运算符和表达式
- 使用内置函数、变量和库
ROCm 和 HIP 存储器模型
- 使用不同的内存空间,例如全局内存空间、共享内存空间、常量内存空间和局部内存空间
- 使用不同的内存对象,例如指针、数组、纹理和表面
- 使用不同的内存访问模式,如只读、只写、读写等。
- 使用内存一致性模型和同步机制
ROCm 和 HIP 执行模型
- 使用不同的执行模型,例如线程、块和网格
- 使用线程函数,如hipThreadIdx_x、hipBlockIdx_x、hipBlockDim_x等。
- 使用块函数,如 __syncthreads、__threadfence_block 等。
- 使用网格函数,如hipGridDim_x、hipGridSync、合作组等。
调试
- 在 Windows 上调试 ROCm 和 HIP 程序
- 使用 Visual Studio 代码调试器检查变量、断点、调用堆栈等。
- 使用 ROCm 调试器调试 AMD 设备上的 ROCm 和 HIP 程序
- 使用 ROCm Profiler 分析 AMD 设备上的 ROCm 和 HIP 程序
优化
- 在 Windows 上优化 ROCm 和 HIP 程序
- 使用合并技术提高内存吞吐量
- 使用缓存和预取技术来减少内存延迟
- 使用共享内存和本地内存技术来优化内存访问和带宽
- 使用分析和分析工具来衡量和改进执行时间和资源利用率
总结和下一步
要求
- 了解 C/C++ 语言和并行编程概念
- 计算机体系结构和内存层次结构的基础知识
- 具有命令行工具和代码编辑器的经验
- 熟悉 Windows 操作系统和 PowerShell
观众
- 希望了解如何在 Windows 上安装和使用 ROCm 对 AMD GPU 进行编程并利用其并行性的开发人员
- 希望编写可在不同 AMD 设备上运行的高性能和可扩展代码的开发人员
- 希望探索 GPU 编程的低级方面并优化其代码性能的程序员
21 小时
客户评论 (2)
与各种示例非常互动,在培训开始和结束之间的复杂性进展良好。
Jenny - Andheo
课程 - GPU Programming with CUDA and Python
机器翻译
培训师精力充沛,幽默风趣。
Tadeusz Kaluba - Nokia Solutions and Networks Sp. z o.o.
课程 - NVIDIA GPU Programming - Extended
机器翻译