当前位置: 首页 > news >正文

14. GPU共享内存

1.GPU共享内存

2.共享内存和常量缓存


1.GPU共享内存

GPU共享内存(SharedMemory)是GPU芯片内部、一小块超高速、"线程块专属的临时工作区"1).核心特点 a.在芯片内部(片上)离计算单元非常近,延迟比全局显存低几十~上百倍,带宽也高得多 b.只属于一个线程块 同一个Block里的线程可以互相读写、通信;不同Block之间完全不能互相访问共享内存 c.容量很小、是稀缺资源 一般一个SM(流多处理器)只有16KB~16384KB不等,不能滥用 d.手动控制 不像缓存是硬件自动管的,共享内存要你自己分配、同步、释放
2).它的作用 a.减少对慢全局内存的访问,把要反复用的数据先读到共享内存,反复用,而不是每次都去读显存 b.块内线程快速通信,线程之间交换中间结果,不用走慢的全局内存

2.共享内存和常量缓存

1).共享内存:适合"块内复用 + 线程通信"你在写Compute Shader时,凡是需要同一个线程块内的线程互相交换数据、或反复读取同一份数据的场景,都用它 例1:图像卷积(比如高斯模糊)—— 把一小块纹理数据读到共享内存,块内多个线程反复用,避免多次读慢的全局显存 例2:粒子邻域计算 —— 同一个Block的粒子互相查位置,通过共享内存快速交换,不用走全局显存 例3:矩阵分块计算 —— 把矩阵的一小块加载到共享内存,块内线程协作计算,提升效率
2).常量内存:适合"全局只读 + 高频复用"凡是整个Shader中所有线程都要读、且全程不变的数据,优先放常量内存 例1:Unity中Compute Shader的相机参数(投影矩阵、视口大小),光照参数(方向、强度),全程只读,所有线程都要用 例2:固定的配置参数,比如后处理的模糊半径、采样数,一次赋值,所有线程共享读取
http://www.jsqmd.com/news/371502/

相关文章:

  • 前端+AI:CSS3(二) - 指南
  • 都在推deepseek本地化部署,为什么我不建议!
  • 别只盯着deepseek了,这个大模型本地化部署成本仅deepseek的1/3
  • day83(2.11)——leetcode面试经典150
  • 智能风控新纪元:建广数科自主开发的风险监控平台
  • 深入解析 Rust 数据建模:枚举(Enum)与结构体(Struct)的深度设计与工程实践 - 实践
  • Redis 8.6新特性全解析:从性能到运维的升级
  • 《构建之法》读后感(2)
  • list文档介绍。 - 教程
  • Java高频面试题:ZooKeeper集群中服务器之间是怎样通信的?
  • OpenFeign全解 声明式REST客户端原理与配置实战
  • D.二分查找-二分答案-求最大——1802. 有界数组中指定下标处的最大值
  • 别再用ChatGPT群发祝福了!30分钟微调一个懂你关系的“人情味”拜年AI
  • python defaultdict
  • A.每日一题——1382. 将二叉搜索树变平衡
  • 一人食调味痛点破解:小容量健康调味品,告别凑活吃出精致感 - 谈谈-新视野
  • 计算机毕业设计springboot医疗纠纷处理系统 医患矛盾调解信息化平台的设计与实现 医疗事故争议在线处置系统的设计与开发
  • B3872 [GESP202309 五级] 巧夺大奖
  • 信息论与编码篇---微分熵
  • 2深度学习基础知识
  • 独居餐如何有仪式感?天然提鲜调味品,让一人食告别凑活 - 谈谈-新视野
  • 信息论与编码篇---微分熵的极值性
  • 一人食不将就:轻盐调味让独居餐吃出健康与仪式感 - 谈谈-新视野
  • 自定义控件 - 流式布局:TagFlowLayout
  • 信息论与编码篇---连续随机变量的微分熵
  • 六个月慢酿的轻盐调味品,适配一人食的健康选择 - 谈谈-新视野
  • 一人食调味不将就:轻盐慢酿方案,让独居餐有仪式感还不浪费 - 谈谈-新视野
  • 破局基层沟通壁垒 赋能凉山脱贫攻坚——智能会议系统筑牢政务协同“数字桥梁”
  • Spring Boot 中采用 @Transactional 注解设置事务管理
  • 关于春节期间创作者身份认证审核延迟的通知