关于texture memory的访问速度

看资料说texture memory位于global memory,带有cache 缓存,我想问下texture memory的访问速度是怎么个情况?
1 第一次访问的时候是不是和global memory一样,而第二次访问和寄存器差不多。
2 访问数据的时候会把相邻的数据取到cache里面,然后第一次访问就可能和寄存器差不多。
以上哪种理解比较好,还是都不对,恳求大牛指点啊。
constant memory的请款呢?:stuck_out_tongue:

缓存的速度是没有寄存器快的,如果缓存命中,速度就是缓存的速度,如果没有命中就是全局存储器的速度

纹理L1 Cache和共享内存一样都是从L1 cache开辟的,如果不考虑传输路径消耗和到寄存器的开销,延迟是几乎和寄存器差不多的

哦 谢谢版主哈 知道了

[
那个我第一个线程第一次访问texture memory,缓存没有命中,然后相邻的线程第一次访问相邻地址的texture memory,有没有可能命中呢?
我的意思就是是只有访问过才会缓存,还是把相邻地址的一起缓存了?
谢谢!

谢谢哈 顺便帮忙看看楼上的那个问题哈 :slight_smile:

可能命中

即使命中,fetch texel的速度延迟也要看你设置的纹理滤波属性,如果是点采样,如果命中不会比寄存器慢多少,如果是linear模式就会慢的比较明显,但很多情况比你使用共享内存然后自己计算线性插值要快