你觉得呢?什么会更快,速度更快:在GPU或CPU(多线程)上执行稀疏矩阵(CSR)乘法(使用向量)?GPU或CPU上的稀疏矩阵乘法?
回答
它取决于矩阵的大小和需要执行的迭代次数。这是因为您需要将矩阵数据从CPU内存复制到GPU内存,并将GPU的结果复制回CPU。如果你要在矩阵上只执行一次迭代,那么在CPU上执行它总是更好,而不是在GPU上执行。而且,GPU有启动时间的问题。所以,如果你有更多的迭代要执行,那么去GPU,否则我的选择将是CPU。同样,由于数据复制,矩阵的大小也会影响性能。
我的猜测是GPU的实现不会有太大的收获,因为你没有那种可以实现并行处理的同类数据结构。
嗯我认为你是对的,但像往常一样有使用GPU的情况下会赢。并行考虑许多矩阵运算。在CPU上,受限于内核数量,而这些内核的数量通常会少于GPU。 但是,GPU上的双精度数学性能通常不如浮点运算那么快。所以这也取决于这一点。 – GorillaPatch 2010-08-10 10:39:34
@GorillaPatch:是的,除了最新的nVidia GPU之外,所有的nVidia GPU都具有相当差或不存在的双精度性能,即使如此它仍然比单精度慢2倍。要在GPU上获得巨大胜利,理想情况下需要使用单精度浮点数,并且您的算法需要高度并行化。 – 2010-08-10 13:50:38
我认为veda击中了它的头。我绝不是这方面的专家,但我相信在使GPU工作方面存在开销,并且如果计算的大小不够大,GPU处理的成本就会失去开销。然而,如果你有像角色骨架这样的有很多矩阵相乘的东西,那么这将更适合GPU。我目前也在为我的一个项目研究这些事情。
- 1. 稀疏矩阵 - 矩阵乘法
- 2. 稀疏矩阵乘法的Theano梯度
- 3. Matlab有效的稀疏矩阵乘法
- 4. SciPy的稀疏矩阵乘法
- 5. Java中的稀疏矩阵乘法
- 6. 稀疏矩阵,链表的乘法
- 7. 与本征稀疏矩阵乘法
- 8. 稀疏矩阵乘法结构
- 9. 稀疏矩阵乘法执行时间
- 10. Tensorflow中批量稀疏矩阵乘法
- 11. 矩阵(scipy稀疏) - 矩阵(密集; numpy阵列)乘法效率
- 12. 用稀疏矩阵乘二次形式矩阵的算法
- 13. Open MP:稀疏矩阵的对称矩阵乘法
- 14. 稀疏矩阵的乘积列元素
- 15. 稀疏矩阵
- 16. 本征稀疏矩阵乘法似乎计算全矩阵
- 17. 稀疏矩阵乘法涉及倒数矩阵
- 18. Numpy matrix乘积 - 稀疏矩阵
- 19. 相乘两个非稀疏矩阵
- 20. 使稀疏矩阵快速地相乘
- 21. 稀疏矩阵和矩阵
- 22. 通过稀疏矩阵乘以密集矩形矩阵
- 23. 稀疏矩阵乘法只计算上三角形
- 24. 以稀疏矩阵
- 25. 50Kx50K稀疏矩阵
- 26. 稀疏三元组稀疏矩阵matlab
- 27. 确定稀疏矩阵的稀疏性(Lil矩阵)
- 28. PageRank计算矩阵向量乘积的稀疏矩阵
- 29. 多GPU上的稀疏矩阵矢量产品
- 30. 用极稀疏矩阵乘法的最快方法是什么?
Bell et al。 “CUDA上的高效稀疏矩阵 - 矢量乘法”具有以下答案:在GPU上计算速度更快。 – Dirk 2013-02-01 14:37:05