[CamX] 内存分析调试技巧

本文总结在CamX上内存分析的一些调试技巧。

CamX中Memory Profile的使用

首先从 /vendor/etc/camera/ 下面 pull 出camxoverridesettings.txt

adb pull /vendor/etc/camera/camxoverridesettings.txt

在该文件中添加如下三行,前两行是打开offline log,最后两行是打开memory 统计功能。

enableOfflineDump=0x1
EnableAsciiLogging=0x1
logInfoMask=0x20
enableMemoryStats=TRUE

再将 camxoverridesettings.txt push到/vendor/etc/camera/,然后重启手机/重启provider进程。

复现问题后,抓出offline log并对其进行merge,具体的merge方法请参考:

接下来执行 get_memory_stats.py 产生memory profile report:

python get_memory_stats.py <output_file_name_without_extension> <output_sheet_name> <log_file1> <log_file1>

注意:建议使用python2版本

比如下面是我抓取两次拍照后的memory统计对比情况:

C:\Python27\python.exe .\get_memory_stats.py mc_capture capture .\0030.txt .\0002.txt

执行上面的语句后会产生两个文件:

  • capture.csv : 内存使用详细信息
  • mc_capture.xlsx: 两次memory 统计对比

mc_capture.xlsx 文件最后会有两次内存统计的比较数据:

CamX中Memory Profile的使用

Camx原生的跑不起来, 我对 get_memory_stats.py 脚本进行了简单修改,,有需要的可以点击 get_memory_stats.py 下载。

赞(9)
未经允许不得转载:极客笔记 » [CamX] 内存分析调试技巧
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址