1、功耗问题需要哪种log

功耗问题抓log请遵循几条原则:

---------------------------------------------------------------------------------------------------------------------

(1)测试功耗数据的过程务必使用user版本,并且关闭所有log

(2)除非有特殊需求,任何时候请关闭modem log(包括C2K modem log)

(3)mobile log部分,不要只提供kernel log(或者uart log),务必提供完整的mobile log包

(3)有丰富处理经验,且真的需要打开modem log,务必提供之前没有开modem log时的mobile log分析说明

log的抓取原则:

什么时候提供

数据连接关闭

数据连接打开

必要

mobile log(关闭modem  log)

mobile log + net log(关闭modem  log)

如果mobile + net log无法定位问题

mobile log + modem log

mobile log + net log + modem log

2、量测电流波形需要的工具

量测电流波形需要采样精度高,而且能保存整个电流变化为文件形式的专业工具。

这里推荐:PowerMonitor

官网介绍:

https://www.msoon.com/LabEquipment/PowerMonitor/

其图形界面为

有些量测电流波形提供的波形图为

对比之下精度太低,只能看图,问题不太好定位。

  • Powermonitor的使用

1.连接假电池到powermonitor,假电池尽量不要使用大电容【注:假电池需要带NTC 电阻,否则可能不能正常开机】

2.如果开机powermonitor 出现红灯现象,可以设置Parameters à Power-up current limit 滑动到值比较大的地方

这样可以避免开机大电流,因为powermonitor的默认设定较低值,容易出现过流保护,从而导致powermonitor 红灯亮起

3.设置好电压4V【Set Vout】,然后点击 Vout Enable

4.点击Run 查看波形

5.录制好所需的波形后,可以点击Save 保存波形

3、thermal log

  • 为什么需要抓thermal log

我们使用WhatsTemp 这个APP来抓取thermal log

thermal log里面包含了CPU/GPU使用信息,以及thermal limit的状况

对我们分析动态场景的功耗问题是极为有用的

  • APP哪里下载

WhatsTemp可以在online上下载到:Home > Tool > WhatsTemp

  • APP使用方法

4、systrace/ftrace

systrace/ftrace 也是我们分析功耗问题常用的工具

-------------------------------------------------------------------------------------------------------------

thermal log只能帮你粗略看CPU的loading状况,

而systrace/ftrace可以帮你定位到是谁在使用CPU,也可以用来分析idle状态下的毛刺波形是谁触发的

我们通常会把两者结合起来用:

用thermal log做初步分析比较loading的差异,用systrace/ftrace来定位root cause

5、wireshark

  • 为什么要使用wireshark

wireshark是我们用来分析netlog的一个工具

通常用来定位开数据连接的待机功耗问题,查找是哪个APP/Process在使用数据

  • 哪里可以下载

wireshark可以在公共网络上下载到,一般公司负责协议/TCP/Wifi这些部门也会有这个工具

  • 怎么使用wireshark

首先需要在抓log时,打开mtklog中的netlog,就可以找到netlog对应的文件

用wireshark打开这个.cap文件,界面如下

有时候最前面的【时间戳】格式会不对,会跟mobile log对不上,如果遇到了,可以通过如下菜单调整

[View]->[Time Display Format]

6、layerdump

命令:adb shell dumpsys SurfaceFlinger

下面问launcher的图层:

h/w composer state:
h/w composer present and enabled
Hardware Composer state (version 01050000):
mDebugForceFakeVSync=0
Display[0] configurations (* current):
* 0: 1080x1920, xdpi=368.114990, ydpi=368.114990, refresh=16553550, colorTransform=0
numHwLayers=5, flags=00000000
type | handle | hint | flag | tr | blnd | format | source crop (l,t,r,b) | frame | name 
-----------+----------+------+------+----+------+-------------+--------------------------------+------------------------+------
HWC | 7d2f027f00 | 0002 | 0000 | 00 | 0100 | RGBx_8888 | 0.0, 0.0, 1080.0, 1920.0 | 0, 0, 1080, 1920 | com.android.systemui.ImageWallpaper
HWC | 7d2f027680 | 0002 | 0000 | 00 | 0105 | RGBA_8888 | 0.0, 0.0, 1080.0, 1920.0 | 0, 0, 1080, 1920 | com.android.launcher3/com.android.launcher3.Launcher
HWC | 7d2f027200 | 0002 | 0000 | 00 | 0105 | RGBA_8888 | 0.0, 0.0, 1080.0, 54.0 | 0, 0, 1080, 54 | StatusBar
HWC | 7d2b367d80 | 0002 | 0000 | 00 | 0105 | RGBA_8888 | 0.0, 0.0, 1080.0, 108.0 | 0, 1812, 1080, 1920 | NavigationBar
FB TARGET | 7d2f626e80 | 0000 | 0000 | 00 | 0105 | RGBA_8888 | 0.0, 0.0, 1080.0, 1920.0 | 0, 0, 1080, 1920 | HWC_FRAMEBUFFER_TARGET

Android 功耗(22)---MTK 功耗问题分析相关推荐

  1. Android Linux Alarm 对功耗的影响

    Android Linux Alarm 对功耗的影响 技术标签: alarm  rtc  android  linux 文章目录 1. Alarm介绍 1.1 alarm的几种类型及区别 1.2 al ...

  2. android功耗测试方法,手机功耗测试指南

    和您一起终身学习,这里是程序员Android 本篇文章主要介绍 Android 开发中的部分 功耗 知识点,通过阅读本篇文章,您将收获以下内容:1.测试功耗手机配置 2.飞行模式待机功耗 3.单SIM ...

  3. Android AsyncTask两种线程池分析和总结

    转自:http://bbs.51cto.com/thread-1114378-1-1.html Android AsyncTask两种线程池分析和总结 (一)    前言 在android Async ...

  4. Android 系统(78)---《android framework常用api源码分析》之 app应用安装流程

    <android framework常用api源码分析>之 app应用安装流程 <android framework常用api源码分析>android生态在中国已经发展非常庞大 ...

  5. 转:Android应用开发性能优化完全分析

    转自:http://blog.csdn.net/yanbober/article/details/48394201 1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜 ...

  6. Android中app卡顿原因分析示例

    http://www.cnblogs.com/zhucai/p/weibo-graphics-performance-analyse.html 朱才 专注于Android图形动画 MIUI工程师 博客 ...

  7. Android+上百实例源码分析以及开源分析+集合打包

    1.360新版特性界面源代码 实现了360新版特性界面的效果,主要涉及到Qt的一些事件处理与自定义控件.但源码好像是c++. 2.aidl跨进程调用 服务端onBind暴露,然后客户端bindServ ...

  8. Android应用开发性能优化完全分析

    1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关于性能的建议,感觉大家你一总结.我一总结的都说到了很多优化注意事项,但是看过这些文章后大多数存在一个问题就是只 ...

  9. Android上百实例源码分析以及开源分析集合打包

    感谢网友banketree的收集,压缩包的内容如下: 1.360新版特性界面源代码 实现了360新版特性界面的效果,主要涉及到Qt的一些事件处理与自定义控件.但源码好像是c++. 2.aidl跨进程调 ...

  10. Android 8.0系统源码分析--Camera processCaptureResult结果回传源码分析

    相机,从上到下概览一下,真是太大了,上面的APP->Framework->CameraServer->CameraHAL,HAL进程中Pipeline.接各种算法的Node.再往下的 ...

最新文章

  1. [C#]ASP.NET MVC 3 在线学习资料
  2. 高并发系列:存储优化之也许可能是史上最详尽的分库分表文章之一
  3. 信息系统项目管理知识--项目时间管理
  4. Java中main函数只能调用同类中的静态方法?
  5. x^A=B(mod C)的解 (离散对数与原根)
  6. Github星标超3k的推荐系统入门资料合集(含教程、论文、代码、数据)
  7. mysql max case连用_mysql 嵌套 case when 的问题
  8. 360要在A股上市 华泰联合证券已签订IPO辅导协议
  9. PyTorch学习记录-1PyTorch安装
  10. yum客户端的配置文件的格式
  11. 连接查询(交叉连接,内连接,外连接,自然连接)
  12. 二分查找 递归与非递归实现
  13. CentOS 缺少mysqli扩展 请检查PHP配置
  14. Access数据库学习总结(1)
  15. 并查集算法题-We Are A Team-python实现
  16. IBM Power小型机用前面板液晶屏查看HMC端口IP
  17. kindle看pdf乱码_kindle阅读pdf中文乱码解决
  18. SSM框架—Thymeleaf模板引擎 Spring5整合Thymeleaf(XML配置)
  19. 你不知道的JavaScript(上卷)- - 书本知识点记录
  20. photoshop油画滤镜使用和案例教程

热门文章

  1. 【STM32】HAL库 STM32CubeMX教程十五---FMC-SDRAM(一)
  2. QT5开发及实例学习之二信号和槽机制
  3. android mtk平台的fm停止搜索,【MTK平台,手机工程模式知识及方法详解】
  4. 【LeetCode】剑指 Offer 56. 数组中数字出现的次数
  5. 《Reids 设计与实现》第二章 字典
  6. UML类图之六种基本关系详解
  7. 源码分析Dubbo前置篇-寻找注册中心、服务提供者、服务消费者功能入口
  8. 剑指Offer的学习笔记(C#篇)-- 数组中重复的数字
  9. vue从入门到开发--4--处理http请求
  10. SDUT 3399 数据结构实验之排序二:交换排序