Surface Memory 是CUDA中纹理缓存的只写模拟。
我在学术文献中发现了NVIDIA GPU peak bandwidth numbers,用于从全局内存和共享内存中读取。但是,我发现有关CUDA内存设备的写入吞吐量的信息较少。
特别是,我对Fermi和Kepler GPU上的CUDA表面存储器的带宽(以及延迟,如果已知)感兴趣。
答案 0 :(得分:2)
由于纹理/表面/全局内存的延迟几乎相同,并且它们都位于片外DRAM上,我认为表面内存的峰值带宽与GPU规格中指示的全局内存相同。
为了计算延迟时间,您引用的纸张可能只使用一个线程。因此,通过
计算延迟很容易全局内存读取延迟=总读取时间/读取次数
您可以以类似的方式在曲面写入上实现时序。但我认为将此方法应用于共享内存延迟测量并不合理,如本文所示,因为与共享内存延迟相比,for循环的开销可能不会被忽略。
答案 1 :(得分:2)
在计算能力2.x和3.x设备上,表面写入通过L1缓存并具有与全局写入相同的吞吐量和延迟。