1
我想在我的GPU上设置一个大矩阵来解决带有CULA的方程式系统。如何在CUDA中更大的矩阵中复制矩阵
为你一些数字,来理解这个问题:
big matrix: 400x400
small matrices: 200x200
现在我想小矩阵的每个季度(100x100)
复制到第二个矩阵的特定部分。
我发现了两个可能的但明显很慢的例子:cublasSetMatrix
和cublasGetMatrix
支持主要维度的规范,所以我可以把这些部分放在我想要的地方,但必须将矩阵复制回主机。 另一个示例是cudaMemcpy
,它不支持主要维度。在这里,我可以手工复制每一行/列(目前我不确定此例程使用的是什么,数据来自Fortran)。但这样,我应该得到一个很大的开销...
有没有比编写我自己的内核,复制矩阵更好的方法?
这个例程是,我在找什么。顺便说一句,我不打算改变我的领导层面。我只需要一种方法来指定主要维度,以便在查看线性内存时考虑到一定的差距。 – Stefan 2013-05-02 13:02:55