由于我要在成都超算平台上做一个河流动力学模型 GPU 大规模并行计算的项目,因而需要了解相关的硬件结构。成都超算的 DCU 产品叫 Pre-Wukong DCU,架构信息是 gfx906,刚好对应 AMD MI50 这一代产品,所以我决定读一下 AMD 官方的 “Vega” 7nm ISA Reference guide。
设备信息通过以下shell指令获取
12srun -N 1 --gres=dcu:1 rocm-smi --showproductnamesrun -N 1 --gres=dcu:1 rocm-smi --showmeminfo vram
术语
GCN Processor (Graphics Core Next shader processor) 是支持标量和向量运算的 ALU
Work-item 工作的一个最小单元
Wavefront 是并行运行于单个 GCN 上的 64 个 work-item 的集合
Workgroup 是一组 wavefront,它们能够快速地进行同步操作,也能通过Local Data Share 共享数据
程序组织在 GC...
Reference: PTX ISA 8.3 (nvidia.com)
编程模型线程层次结构执行一个内核的一批线程被组织成一个 Grid 执行,CUDA 线程块由 CTA 实现,CUDA cluster 块由 cluster 实现。
CTACooperative Thread Arrays (CTA) 是一系列并行的线程,他们可以相互通信。线程在 CTA 中的位置可以通过 ntid.{x|y|z} 向量来描述。
Parallel Thread Execution (PTX) 编程模型是显式地并行的:PTX 程序指定 CTA 中的一个线程的执行逻辑。
一个 warp 是某一个 CTA 的一个子集:这种子集包含最多个能并行执行相同指令的线程。 warp 的大小由硬件决定,PTX 提供立即数 WARP_SZ 作为 warp 大小。
Cluster of CTACluster 是一组并行运行的CTA,它们可以通过共享内存进行同步和通信,不显示设置 cluster 时,视为使用以 1x1x1 的 cluster。cluster 仅在 sm_90 下支持。
Grid of...
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment