使用 Snapdragon Profiler 什么原因导致GMEM 负载?

五月的兔子君 2024-03-14 11:14:58

使用 Snapdragon Profiler  什么原因导致GMEM 负载?

...全文
180 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

Qualcomm® Adreno™ GPU 的平铺架构管道包括一个渲染通道,在此过程中,每个平铺都被渲染到 GMEM 中。按照驱动程序的正常行为,前一个帧缓冲区数据从主内存加载到每个图块的 GMEM 中;换句话说,发生了 GMEM 加载(或未解决)。

问题是每个 GMEM 加载都会减慢处理速度。但是,如果帧缓冲区的内容被清除或无效,则驱动程序可以清除 GMEM 中的该图块。尽管这涉及额外的图形调用及其相关的开销,但它比为每个正在渲染的 bin 将帧缓冲区加载回 GMEM 更便宜。

GMEM 负载有两个主要原因:

对驱动程序的不当提示——应用程序代码使驱动程序认为需要帧缓冲区的先前内容,通常是忽略了清除缓冲区。这归结为一个相对简单的修复,它在减少渲染时间方面得到了很好的回报。它主要适用于 OpenGL ES 编程,因为 Vulkan 显式处理条件。
算法——某些 API,如glReadPixels和glFlush强制管道刷新以获得结果。在恢复绘制帧内容时,执行此中间帧将导致 GMEM 加载。您通常可以通过修改算法来避免 GMEM 加载。

949

社区成员

发帖
与我相关
我的任务
社区描述
为开发者提供高通丰富的解决方案及全面技术下载内容。本版以AI人工智能、WoS移动笔记本、XR、IoT 物联网、Auto 汽车、生成式AI等核心板块组成,为开发者提供一个便捷及高效的学习交流平台。
人工智能物联网机器学习 企业社区 北京·东城区
社区管理员
  • Qualcomm开发
  • csdnsqst0050
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧