CUDA第3维度上的阵列求和

  • 本文关键字:阵列 求和 3维 CUDA cuda
  • 更新时间 :
  • 英文 :


我是CUDA的新手。在编写三维快速阵列求和程序时,我脑海中浮现出一些问题:

  1. 最自然的方法是将每个矩阵条目用作线程,并且每个线程在三维上循环。在这种情况下,内存是否被认为是合并的?由于相邻线程访问相邻元素;他们只在循环变量上有进步。

  2. 为了提高性能,减少第三维度当然会有所帮助。

  3. 有图书馆可以用吗?对于2D求和,使用cuBLAS被认为是一个不错的选择。我正在考虑一种强制类型转换,它欺骗编译器将内存块视为2D数组,并使用cuBLAS中的矩阵向量乘法。

  1. 这是一个联合阅读。

  2. 你可以用同样的方式使用cuBLAS。只需告诉GEMV,第一个(未收缩的)维度是nx*ny。

最新更新