我想首先确认以下内容: 共享内存的基本全局内存事务是32字节,64或128字节,但前提是内存访问可以合并。先前交易的延迟都是平等的。是吗?
第二个问题:如果内存读取无法合并,每个线程只读取4个字节(是吗?)所有线程的内存访问是否会顺序进行?
答案 0 :(得分:1)
这取决于您正在使用的架构。但是,在费米和开普勒你有:
正如您所看到的,有几个变量可以决定您的内存访问需要多长时间。一般的经验法则是:访问模式越密集越好!现在,步幅或错位并不像过去那样昂贵,所以不要过于担心,除非你做一些后期优化。