You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于NVIDIA GPU Load/Store缓存及与CPU No-Write Allocate的疑问

GPU全局内存Store操作的缓存机制解析

核心结论

GPU的全局内存Store操作并非完全不涉及缓存,但和CPU的Store缓存逻辑存在本质差异,书中两处表述是从不同角度描述同一机制,并不矛盾。

对书中两处表述的拆解

  • p142“GPU仅能缓存Load操作,Store操作无法缓存”
    这里的“无法缓存”指GPU不会为Store操作执行Write Allocate(写分配):当执行Store时,如果目标地址不在缓存中,不会将对应内存块加载到缓存再写入,而是直接准备向全局内存DRAM发起写入请求。这一机制确实类似CPU的No-Write Allocate模式。

  • p158“全局内存的Load/Store均通过缓存中转”
    这里的“中转”指Store操作会先写入写合并缓冲区(Write Combine Buffer)——这是GPU内存子系统中的临时缓存结构,作用是将多个零散的小Store操作合并为更大的内存事务,再批量写入DRAM,以此提升内存带宽利用率。需要注意的是,写合并缓冲区不属于传统意义上的L1/L2持久化缓存,它的存在是为了优化写入效率,而非像Load操作那样提供数据复用的缓存能力。

补充细节

  • 不同GPU架构的具体实现有差异:Fermi及后续架构中,全局内存Store会经过L2缓存,但依然遵循No-Write Allocate规则——只有当Store目标地址已在L2缓存中时,才会写入L2;否则仍通过写合并缓冲区直接写向DRAM。
  • 和CPU的核心区别:CPU的Store通常会执行Write Allocate,配合Write-Back或Write-Through策略实现缓存复用;而GPU的Store更偏向于批量Write-Through模式,不主动分配缓存行,核心目标是提升大规模并行场景下的内存写入吞吐量。

内容的提问来源于stack exchange,提问作者kdh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 04:24:52