常量内存针对广播进行了优化,即当warp中的线程都读取相同的内存位置时.如果他们正在阅读不同的位置,它将起作用,但是经线引用的每个不同位置都会花费更多时间.当正在向线程广播读取时,常量存储器比纹理存储器快得多.
纹理内存具有高延迟,即使对于缓存命中也是如此.您可以将其视为带宽聚合器 - 如果可以从纹理缓存中提供服务,则GPU不必为外部存储器进行读取.对于2D和3D纹理,寻址具有2D和3D局部性,因此高速缓存行填充拉入2D和3D内存块而不是行.
最后,纹理流水线可以执行"奖励"计算:处理边界条件("纹理寻址")和将8位和16位值转换为单位浮点数是可以"免费"完成的操作示例.(它们是纹理读取具有高延迟的部分原因)
| 归档时间: |
|
| 查看次数: |
4847 次 |
| 最近记录: |