CUBLAS批量和矩阵大小

时间:2017-06-29 17:57:20

标签: cuda gpgpu cublas

我想知道对于各种CUBLAS批处理例程,什么是合理大小的矩阵和批处理。

例如,cublas<t>getrsBatched()的CUBLAS documentation 声明:

  

此功能旨在用于小尺寸的矩阵   启动开销是一个重要因素。

小不太具描述性。也许&#39;小&#39;取决于特定的GPU型号(例如GTX 580,TITAN X,K80)?

另一个例子在下面的一个答案中给出:

How performing multiple matrix multiplications in CUDA?

他们提到的矩阵和批量大小是&#34;小&#34;,&#34;中等&#34;和&#34;大&#34 ;;但我不清楚这究竟意味着什么。

理想情况下,我想要大小的上限和下限。在我使用矩阵的应用程序中,总是小于批量大小 - 矩阵的大小为300x300或更小,批量大小在1,000到1,000,000之间。

修改--------:

我仍然没有完全理解尺寸问题。让我来解决一个具体的例子。假设我们有1,000,000个矩阵,大小为300x300,我们希望独立地反转它们。

假设我们拥有16个SM的GPU。然后通过下面第一个评论中给出的定义,(2048 * 16)/(300 * 300)&lt; 0.37;所以300x300矩阵不小。我们可以得出结论,在这种情况下我不应该使用cuBLAS批处理例程(我认为)。我应该研究哪些策略?

0 个答案:

没有答案