带有纹理的 CUDA 中的 GPU 性能



我有一个关于 NVIDIA GPU 性能的问题。我有一个在两个数组之间进行插值的实现。使用倾斜到线性内存的纹理比使用 CUDA 数组更快。现在我只在一个 GPU 上尝试过。每个 GPU 都是这种情况还是存在差异?我在笔记本电脑中使用 GPU。台式机 GPU 要快得多吗?因为目前我只获得了 2-3 的加速。

我可能看起来是一个愚蠢的问题,但我会感谢在许多GPU上使用纹理的人的回答。它让我想知道使用 CUDA 数组(应该有一些缓存优化......)速度较慢。

我正在研究NVIDIA Quadro 2000m,我正在将其与I7-2860QM @ 2,50GHZ(实现)进行比较。这是一场公平的比赛吗?

具有

计算能力 2.0 或更高缓存全局内存和纹理的 GPU,因此纹理在 CC 1.x 时代的主要优势已经不复存在。

恰恰相反,关于纹理的一个鲜为人知的事实是,由于需要在硬连线布局的寄存器中存储多个参数和返回值,它们会增加寄存器压力。此外,全局内存的缓存大于纹理内存的缓存。因此,通过纹理读取内存可能比直接访问全局内存慢也就不足为奇了。

对于移动或桌面 GPU,此特性应该是相同的,即使高端桌面 GPU 的速度比移动设备快约 2 到 5 倍。

最新更新