繁体   English   中英

CUDA表面存储器的峰值带宽?

[英]Peak Bandwidth for CUDA Surface Memory?

表面存储器是CUDA中纹理高速缓存的只写模拟。

我在学术文献中发现了NVIDIA GPU 峰值带宽数 ,用于读取全局内存和共享内存。 但是,我发现有关CUDA内存设备写入吞吐量的信息较少。

特别是,我对Fermi和Kepler GPU上的CUDA表面存储器的带宽(以及延迟,如果已知)感兴趣。

  • 有基准数据吗?
  • 如果没有,那么我如何实现测量表面存储器写入带宽的基准?

根据Device Memory Accesses

  • 在高速缓存未命中时:纹理提取或表面读取需要从设备存储器读取一个全局存储器;
  • 在缓存命中:它减少了全局内存带宽需求,但没有减少获取延迟。

由于纹理/表面/全局存储器的延迟几乎相同,并且它们都位于片外DRAM上,我认为表面存储器的峰值带宽与GPU规范中指示的全局存储器相同。

为了计算延迟时间,您引用的纸张可能只使用一个线程。 因此,通过计算延迟很容易

全局内存读取延迟=总读取时间/读取次数

您可以以类似的方式在表面写入上实现时序。 但我认为将此方法应用于共享内存延迟测量并不合理,如本文所示,因为与共享内存延迟相比,for循环的开销可能不会被忽略。

在计算能力2.x和3.x设备上,表面写入通过L1高速缓存并具有与全局写入相同的吞吐量和延迟。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM