DCU
文章平均质量分 78
走过,莫回头
这个作者很懒,什么都没留下…
展开
-
PTX 汇编代码语法
PTX 汇编是一种与硬件无关的指令集,设计用于编写高度并行的程序。PTX 汇编为 CUDA 编程提供了底层的控制,允许开发者在设备上执行高效的并行计算。操作类型、操作符和数据类型。基本的内存加载、存储和算术运算。线程同步与内存屏障指令。条件执行与分支指令。通过掌握这些语法和指令,可以更深入地优化 GPU程序,并理解 CUDA 程序背后的汇编执行过程。原创 2024-10-15 16:04:52 · 687 阅读 · 0 评论 -
mpi和openmp的区别
MPI更适合于大规模的分布式计算环境,需要在不同节点之间进行通信。OpenMP更适合于多核共享内存系统,简化了多线程编程。有时,两者可以结合使用:在一个大型计算集群中,可能使用 MPI 在节点间进行通信,同时在每个节点内部使用 OpenMP 来利用多核处理器。原创 2024-08-15 16:21:48 · 557 阅读 · 0 评论 -
RCCL了解
RCCL 是 AMD 提供的一个专为其 GPU 优化的集体通信库,旨在提升大规模并行计算的通信效率。它与 ROCm 平台集成,支持多种集体通信操作,适用于 HPC、深度学习和科学计算等领域。原创 2024-08-16 19:10:42 · 634 阅读 · 0 评论 -
Cray toolchain了解
Cray Toolchain 是一组用于在 Cray HPC 系统上开发、调试和优化应用程序的工具。这些工具包括编译器、调试器、性能分析器和数学库,并且与 Cray 系统的硬件和软件环境高度集成。使用 Cray Toolchain,可以更有效地开发和优化在 Cray HPC 系统上运行的高性能计算应用。原创 2024-08-16 19:09:23 · 375 阅读 · 0 评论 -
mpiexec.hydra和mpirun区别
是基于 Hydra 进程管理器的工具,通常与 Intel MPI 或其他 MPI 实现中的 Hydra 进程管理框架配合使用。mpirun是一个通用的 MPI 启动工具,支持多种 MPI 实现,具体功能和选项取决于所使用的 MPI 实现,如 OpenMPI。在使用时,选择哪个工具取决于你使用的 MPI 实现和你需要的功能。原创 2024-08-16 19:07:21 · 478 阅读 · 0 评论 -
Cuda GEMM优化
所以如果我把矩阵A和B都搬运到on-chip的SMEM上,然后采用和naive GEMM一样的计算方法,那么尽管还是会在SMEM上发生重复读数据的情况(也即总的读写次数和naive一样,只不过现在不是从global memory读取,是从SMEM上读取),可是因为带宽变大了,总体来说数据读取时间肯定减少了。 A和B对应的切块(如图中的红色和黄色块)组成一个cuda编程里的block,这里我们共有4*4 = 16个block,每个block负责计算C矩阵中大小为的部分(图中绿色块)。转载 2024-07-06 15:35:32 · 111 阅读 · 0 评论 -
DCU整体硬件架构
首先,DCU通过PCI-E总线与CPU处理器相连,它是CPU主机系统的一个硬件扩展,其存在的目的是为了对程序某些模块或者函数进行加速。虽然DCU是原硬件系统的一个扩展,接受CPU调度指挥,但是在运行程序时,它又保持相对独立性,又可以将其视为一个独立的系统。同时一个主机系统在PCI-E总线上可以插入多张DCU与CPU进行互连,这使得一台主机的算力具有可扩展性,合理的利用多DCU程序可以获得更好的加速效果。虽然线程从概念上是独立执行的,但从DCU硬件来说是64个线程一组并行执行的,即一条指令发布后,原创 2024-07-02 10:32:29 · 879 阅读 · 0 评论