【发布时间】:2011-04-21 02:31:56
【问题描述】:
假设我想将两个矩阵相乘,50 乘以 50。我有 2 种方法来排列线程和块。
a) 一个线程来计算结果矩阵的每个元素。所以我在线程中有一个循环乘以一行和一列。
b) 一个线程来做每个乘法。结果矩阵的每个元素需要 50 个线程。乘法完成后,我可以使用二进制归约来对结果求和。
我不知道该走哪条路,所以我选择了b。这并不理想。事实上它很慢。知道为什么吗?我的猜测是线程太多了,而且它们大部分时间都在等待资源,这是真的吗?
【问题讨论】:
标签: cuda