在CUDA中,什么是内存合并,以及如何实现它?

在CUDA中,什么是内存合并,以及如何实现它?

合并的标准在CUDA 3.2 Programming Guide的G.3.2节中有很好的记录。简而言之: warp中的线程必须按顺序访问内存,被访问的字应该是>=32位。此外,对于32位、64位和128位访问,warp访问的基址应分别为64、128或256字节对齐。

Tesla2和费米硬件在合并8位和16位访问方面做得很好,但如果您想要峰值带宽,最好避免使用它们。

请注意,尽管Tesla2和费米硬件有所改进,但合并绝不会过时。即使在Tesla2或Fermi类硬件上,未能合并全局内存事务也会导致2倍的性能损失。(在Fermi类硬件上,这似乎只有在启用ECC时才成立。连续但未合并的内存事务对Fermi的影响约为20%。)

相关探索

刘禅怎么死的(刘禅最后怎样了)
365体育投注英超

刘禅怎么死的(刘禅最后怎样了)

巴西世界杯23人大名单
365bet亚洲城

巴西世界杯23人大名单

千呼万唤始出来 三星750evo SSD评测
365bet安卓

千呼万唤始出来 三星750evo SSD评测