我正在寻找一些专用于典型密集矩阵乘法的特殊函数(CUDA),例如 A*B,其中 A 的大小为 6*n,B 的大小为 n*6,n 非常大(n=2 ^24)。我已经使用 CUBLAS 和其他一些库来测试这个示例,在 CUBLAS 中,对于这个示例,我们使用 6*6=36 个线程,这与 GPU 的总并行度相差甚远,所以我将 A 和 B 拆分为子矩阵(向量)然后对它们中的每一个实现点积函数,性能得到了很好的提升。问题是,在这种情况下,我们需要启动 36 个 CUDA 内核,并且在它们之间有很多相同的数据足迹(相同的数据已经从 GPU 的全局内存中访问过多次)。所以我问这种问题是否存在任何解决方案。
问问题
344 次