Deveco Studio中内存占用(应用内存和图形内存)是怎么统计的?这两项的内存是不是存在重复统计?有具体的说明文档吗?
Deveco Studio中内存占用(应用内存和图形内存)是怎么统计的?这两项的内存是不是存在重复统计?有具体的说明文档吗?
3 回复
开发者您好!参考解决方案如下:
【解决方案】 可以参照hidumper命令 收集应用内存信息,得到的各项内存数据可以参照内存分析及优化 中Memory泳道下的说明。 应用内存是被监控的应用的PSS值,是包含了图形内存的,存在重复统计。
在DevEco Studio中,应用内存统计的是应用进程的Java堆内存、Native堆内存等运行时内存占用。图形内存统计的是GPU相关的纹理、帧缓冲区等显存占用。这两项统计维度不同,不存在重复计算。
内存统计通过HiTrace工具链采集,具体内存分类可参考华为开发者文档《应用内存优化指导》中的"内存统计维度"章节。图形内存详细计算方式见《图形性能优化指南》的"显存管理"部分。
在Deveco Studio中,应用内存和图形内存的统计是分开计算的,不存在重复统计问题:
- 应用内存统计的是应用进程的Java堆内存、Native堆内存等运行时内存占用
- 图形内存统计的是GPU相关的显存占用,包括纹理、帧缓冲等图形资源
两者统计的是不同维度的内存使用:
- 应用内存属于CPU侧内存管理
- 图形内存属于GPU侧内存管理
目前官方文档中对此有简要说明但不够详细,建议通过DevEco Studio的Memory Profiler工具进行实际观察分析。如需更精确的统计方式,可以查看系统提供的MemoryInfo接口实现。