gpt4 book ai didi

CUDA 编程 - L1 和 L2 缓存

转载 作者:行者123 更新时间:2023-12-04 17:38:37 26 4
gpt4 key购买 nike

您能否解释一下在 CUDA 编程中使用“L1 和 L2”缓存或“仅 L2”缓存之间的区别吗?在时间执行中我应该期待什么?我什么时候可以期待更小的 GPU 时间?当我同时启用 L1 和 L2 缓存或只启用 L2 时?谢谢

最佳答案

通常,您会同时启用 L1 和 L2 缓存。您应该尝试尽可能多地合并您的内存访问,即 warp 中的线程应该尽可能多地访问同一 128B 段内的数据(有关此主题的更多信息,请参阅 CUDA Programming Guide)。

有些程序无法以这种方式进行优化,例如它们的内存访问是完全随机的。对于这些情况,绕过 L1 缓存可能是有益的,从而避免在您只需要 4 个字节时加载整个 128B 行(例如,您仍将加载 32B,因为这是最小值)。显然有一个效率增益:从 128 的 4 个有用字节从 32 改进到 4 个。

关于CUDA 编程 - L1 和 L2 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10180949/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com