使用 cuBLAS-XT 进行大输入

sta*_*rrr 3 cuda cublas

此链接 说 cuBLAS-XT 例程提供核外操作 - 操作数数据的大小仅受系统内存大小的限制,不受 GPU 板载内存大小的限制。这意味着只要输入数据可以存储在 CPU 内存上并且输出的大小大于 GPU 内存大小我们就可以使用 cuBLAS-XT 函数,对吗?

另一方面,这个链接说“在非常大的问题的情况下,cublasXt API 提供了将一些计算卸载到主机 CPU 的可能性”和“当前,只有例程 cublasXtgemm() 支持这个功能。这是吗?输入大小大于CPU内存大小的问题的情况?

没看懂这两者的区别!如果有人帮助我理解差异,我将不胜感激。

Rob*_*lla 5

cublasXt 的目的是允许操作在多个 GPU 上自动运行。因此,例如,矩阵乘法或其他支持的运算可以在多个 GPU 上运行。

该cublasXtgemm程序有一个特殊的能力,即除了乘跨2分或更多的GPU并行化矩阵,它也可以并行它在2个或多个GPU PLUS使用主机CPU作为额外的计算引擎。

矩阵乘法问题很容易分解,正如这里所讨论的。如果您仅在 GPU 上运行所有“块”工作,那就是 cublasXtgemm 的普通功能(仅使用 GPU)。如果您在 GPU 上运行除一个工作块之外的所有工作,并在 CPU 上运行其中一个工作块,那就是特殊功能。