android 性能优化---(2) MTK 平台开机时间优化
一、在工程模式开启MTKLogger, 开机后取日志bootprof
adb pull /storage/emulated/0/mtklog/mobilelog/APLog_2018_0309_100752/bootprof d:/mtk
二、开机日志分析
2.1 Preloader&lk time
Preload和lk启动时间如下:
----------------------------------------
0 BOOT PROF (unit:msec)
----------------------------------------
1288 : preloader
3364 : lk
----------------------------------------
46.056922 : ON
105.511923 : 1-swapper/0 : initcall: of_init 23.163308ms
135.718000 : 1-swapper/0 : initcall: init_mtk_governor 25.470230ms
204.063692 : 1-swapper/0 : initcall: arm64_device_init 54.840154ms
235.911077 : 1-swapper/0 : initcall: pm_sysrq_init 20.581462ms
313.262308 : 1-swapper/0 : initcall: event_trace_init 35.495538ms
337.730308 : 1-swapper/0 : probe: probe=platform_drv_probe drv=mt-pmic(ffffffc001131aa8) 18.878000ms
338.935231 : 1-swapper/0 : initcall: pmic_mt_init 20.627385ms
437.297846 : 1-swapper/0 : initcall: populate_rootfs 94.791538ms
533.302462 : 1-swapper/0 : probe: probe=mtkfb_probe drv=mtkfb(ffffffc00114bea8) 22.376538ms
533.789000 : 1-swapper/0 : initcall: mtkfb_init 23.892077ms
686.978232 : 1-swapper/0 : probe: probe=spi_drv_probe drv=sunwave-fp(ffffffc001185e48) 64.082231ms
687.043616 : 1-swapper/0 : initcall: sf_ctl_driver_init 64.994923ms
746.692155 : 1-swapper/0 : probe: probe=i2c_device_probe drv=ext_speaker_amp(ffffffc00116cbd8) 56.196307ms
806.679309 : 1-swapper/0 : probe: probe=i2c_device_probe drv=ext_speaker_amp(ffffffc00116cbd8) 59.757230ms
806.757078 : 1-swapper/0 : probe: probe=platform_drv_probe drv=mt-i2c(ffffffc001186a80) 118.860154ms
825.896770 : 1-swapper/0 : initcall: mt_i2c_init 138.828692ms
914.574309 : 1-swapper/0 : probe: probe=platform_drv_probe drv=mt-eem(ffffffc001111b40) 21.778538ms
916.732232 : 1-swapper/0 : initcall: eem_init 24.701384ms
1096.474463 : 1-swapper/0 : probe: probe=i2c_device_probe drv=ICM206XX_ACCEL(ffffffc001129888) 162.865462ms
1096.762156 : 1-swapper/0 : initcall: acc_init 163.479385ms
1158.710617 : 1-swapper/0 : probe: probe=i2c_device_probe drv=ICM206XX_GYRO(ffffffc00112a568) 61.651154ms
1158.938925 : 1-swapper/0 : initcall: gyro_init 62.161461ms
1716.213696 : 1-swapper/0 : initcall: step_c_init 557.250309ms
2.2 Kernel Init
Kernel初始化时间 如下
1760.835696 : 1-swapper/0 : Kernel_init_done
1958.778235 : 133-kworker/u20:2 : probe: probe=i2c_device_probe drv=NVT-ts(ffffffc00117f630) 219.942077ms
1967.041619 : 133-kworker/u20:2 : probe: probe=platform_drv_probe drv=mtk-tpd(ffffffc00117e440) 228.713462ms
2143.452389 : 1-init : INIT:early-init
2459.731928 : 1-init : INIT:late-init
2.3 Mount partition
分区挂载时间如下:
2459.775082 : 1-init : INIT:Mount_START
13156.166492 : 1-init : INIT:Mount_END
13159.090954 : 1-init : MOBICORE: Starting mcDriverDaemon
13159.979415 : 1-init : MOBICORE: export MC_AUTH_TOKEN_PATH /efs
13452.475185 : 1-init : INIT:post-fs
14199.575572 : 336-vold : vold:init_user0:START
14207.002648 : 336-vold : vold:init_user0:END
14293.808110 : 1-init : INIT:post-fs-data
14326.311341 : 1-init : post-fs-data: on modem start
14925.697266 : 1-init : INIT:boot
14965.581266 : 1-init : MOBICORE: create /data/misc/mcRegistry ++ (unencrypted)
14968.924496 : 1-init : MOBICORE: create /data/misc/mcRegistry -- (unencrypted)
14971.746112 : 1-init : MOBICORE: create /data/misc/mcRegistry ++ (unencrypted)
14974.070189 : 1-init : MOBICORE: create /data/misc/mcRegistry -- (unencrypted)
17201.363271 : 407-main : Zygote:Preload Start
17284.645810 : 406-main : Zygote:Preload Start
2.4 Android Boot
2. 4.1 Pre-load classes
预加载类所消耗的时间
18085.504350 : 367-surfaceflinger : BOOT_Animation:START
18399.795505 : 406-main : Zygote:Preload 4158 classes in 1046ms
18410.484735 : 407-main : Zygote:Preload 4158 classes in 1089ms
18613.683890 : 407-main : Zygote:Preload 162 obtain resources in 202ms
18613.828044 : 406-main : Zygote:Preload 162 obtain resources in 213ms
18763.778198 : 406-main : Zygote:Preload 285 resources in 144ms
18773.443352 : 407-main : Zygote:Preload 285 resources in 151ms
18887.130506 : 406-main : Zygote:Preload End
18967.149429 : 407-main : Zygote:Preload End
2.5 Package scanning
包扫描时间
19037.841045 : 977-system_server : Android:SysServerInit_START
19504.301430 : 977-system_server : Android:PackageManagerService_Start
19955.239201 : 977-system_server : Android:PMS_scan_START
19997.760047 : 977-system_server : Android:PMS_scan_data:/system/framework
20035.112662 : 977-system_server : Android:PMS_scan_data:/vendor/framework
20041.542816 : 977-system_server : Android:PMS_scan_data:/system/priv-app
20499.426125 : 977-system_server : Android:PMS_scan_data:/system/app
20678.174202 : 977-system_server : Android:PMS_scan_data:/vendor/priv-app
20701.053356 : 977-system_server : Android:PMS_scan_data:/system/vendor/app
20745.336510 : 977-system_server : Android:PMS_scan_data:/vendor/plugin
20762.965972 : 977-system_server : Android:PMS_scan_data:/system/presetapp
21248.402973 : 977-system_server : Android:PMS_scan_data:/data/app
22939.954362 : 977-system_server : Android:PMS_scan_END
2.6App initializations
AP初始化时间
23001.924746 : 977-system_server : PMS:reconcileAppsDataLI
24021.181364 : 977-system_server : Android:PMS_READY
31995.755306 : 977-system_server : AMS:systemReady
32026.348999 : 977-system_server : AMS:AMS_READY
32138.240922 : 977-system_server : AP_Init:[service]:[com.android.inputmethod.latin]:[com.android.inputmethod.latin/.LatinIME]:pid:1373
32164.388537 : 977-system_server : AP_Init:[added application]:[com.android.phone]:[com.android.phone]:pid:1389:(PersistAP)
32256.007922 : 977-system_server : AP_Init:[]:[WebViewLoader-armeabi-v7a]:pid:1419
32271.729076 : 977-system_server : AP_Init:[]:[WebViewLoader-arm64-v8a]:pid:1431
32286.962922 : 977-system_server : AP_Init:[service]:[com.android.systemui]:[com.android.systemui/.SystemUIService]:pid:1456:(PersistAP)
32488.827538 : 977-system_server : SystemServer:NetworkManagementService systemReady
32612.675154 : 977-system_server : SystemServer:NetworkStatsService systemReady
33034.495924 : 977-system_server : SystemServer:NetworkPolicyManagerService systemReady
33104.174770 : 977-system_server : SystemServer:ConnectivityService systemReady
33200.794386 : 977-system_server : SystemServer:PhaseThirdPartyAppsCanStart
33218.315694 : 977-system_server : AP_Init:[added application]:[com.mediatek.ims]:[com.mediatek.ims]:pid:1691:(PersistAP)
33241.393002 : 977-system_server : AP_Init:[added application]:[com.mediatek.wfo.impl]:[com.mediatek.wfo.impl]:pid:1706:(PersistAP)
33279.524617 : 977-system_server : Android:SysServerInit_END
33306.355771 : 993-Binder:977_2 : AP_Init:[activity]:[com.android.settings]:[com.android.settings/.FallbackHome]:pid:1726
33622.446233 : 977-system_server : AP_Init:[service]:[com.android.dialer]:[com.android.dialer/com.android.incallui.InCallServiceImpl]:pid:1810
33733.981387 : 1719-Binder:977_5 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:1857
33759.406541 : 1030-android.display : AP_Launch: com.android.settings/.FallbackHome 473ms
33764.264849 : 1012-ActivityManager : AMS:ENABLE_SCREEN
33912.655234 : 1012-ActivityManager : AP_Init:[broadcast]:[com.mediatek.selfregister]:[com.mediatek.selfregister/.RegisterReceiver]:pid:1896
34563.454466 : 993-Binder:977_2 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:1970
34738.516544 : 993-Binder:977_2 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:1992
34860.379313 : 1012-ActivityManager : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2017
34979.781083 : 1012-ActivityManager : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2030
35563.128238 : 1719-Binder:977_5 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2087
35691.079469 : 1012-ActivityManager : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2105
35820.522315 : 1012-ActivityManager : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2120
36557.641856 : 1720-Binder:977_6 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2153
36922.936164 : 1483-Binder:977_4 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2171
37377.391319 : 1720-Binder:977_6 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2190
37625.694089 : 1005-Binder:977_3 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2208
39322.800862 : 992-Binder:977_1 : AP_Init:[broadcast]:[com.mediatek.deviceregister]:[com.mediatek.deviceregister/.RegisterReceiver]:pid:2237
39834.590556 : 2167-Binder:367_5 : BOOT_Animation:END
39834.612248 : OFF
----------------------------------------
================ END of FILE ===============
三、开机时间优化方法
3.1 开机过程中CPU调频调核(kernel,系统),开启多核和调高频率,关注功耗,优化。
3.2 开机过程PMS多线程进行包扫描
3.3 PMS扫描过程中直接根据应用的Native层库目录名称确定应用的ABI,加速扫描.
3.4添加资源预加载优化
3.5关闭系统层和Kernel层日志
3.6 分区挂载是否重复
3.7开机日志分解定位是否有异常耗时点,针对性进行优化
android 性能优化---(2) MTK 平台开机时间优化相关推荐
- android 系统优化(20)---MTK 平台唤醒时间优化1
MTK 平台唤醒流程: 一.唤醒流程: MTK平台唤醒流程是从power键或者其他按键按下开始,本文以mt6753n平台为例,通过分析kernel log来看驱动中整个唤醒的流程,上层的唤醒流程后续再 ...
- Android 系统性能优化(58)---开机时间优化
优化启动时间 启动时间是系统性能的重要组成部分,因为用户必须等待启动完成后才能使用设备.对于较常进行冷启动的汽车等设备而言,较短的启动时间至关重要(没有人喜欢在等待几十秒后才能输入导航目的地). An ...
- 安卓10开机时间优化分析
本文从以下六点分析开机时间 1.软件环境2.开机时间测试方法3.开机各阶段重要的时间节点4.bootchart工具使用说明5.Android开机时间日志信息6.开机时间优化方案 一.软件环境 平台:a ...
- MTK驱动(46)---- Android CPU频率设置(MTK平台)
Android CPU频率设置(MTK平台) 1.CPU 频率设置 主要设置CPU的最大和最小频率 mPerfServiceWrapper.userReg 注册 mPerfServiceWrapper ...
- 安卓系统开机时间优化分析
Android 开机时间分析工具-----perfboot 安卓10开机时间优化分析 Android开机阶段log分析
- mtk android 5.1 logo,Android ROM DIY之MTK平台手机通用移植
在之前的文章中,我们讨论过ROM刷机原理,修改ROM包以及如何让ROM包获取root权限.那么接下来,我们谈谈MTK平台手机ROM移植的话题.如果你是ROM小白,那么建议可以先看看之前的文章. ROM ...
- Android P 9.0 MTK平台 增加以太网静态IP功能
前言 朋友们,最近又开始搞 Android P了,同样的以太网静态 IP 是少不了的功能,今天我们就开始来整一下.之前弄6.0 和 8.1 的都 ok 了. 没想到 9.0 改动还是略微有点大的.来来 ...
- MTK平台开机初始化时 camera驱动流程|MTK camera调试常见几十种问题处理方法
转载:https://www.jianshu.com/p/75ab1d82bbd3 mtk的驱动多是以模块加载的方式(module_init():module_exit():)加载到内核中去的:正因为 ...
- 利用注册表优化系统,减少开机时间
注册表是系统的核心数据库,它包含了应用程序和计算机系统的全部配置信息,初始化信息,文件关联信息以及硬件设备信息等重要数据.注册表直接控制了计算机系统的启动,硬件设备驱动的加载和应用程序的正常运行,故而 ...
最新文章
- 带边框有点击事件的表格
- 一个例子说明如何在DataSnap中使用FireDAC
- python之父去面试-面试题_个人文章 - SegmentFault 思否
- 云计算运维累不累_关于云计算运维管理要点的知识分享
- 线下活动 | 揭秘大数据背后的京东虚拟平台(免费报名中)
- 20应用统计考研复试要点(part17)--概率论与数理统计
- 函数与导数题目类型和解法思路的总结
- 自制串口示波器小工具
- [Leetcode][第81题][JAVA][N皇后问题][回溯算法]
- $_server['php_self'] 漏洞,Discuz! $_SERVER['PHP_SELF'] XSS Vulnerability
- Python高级——with上下文管理器
- Google测试精华文章(1) - 测试行为,而非实现
- 进制怎么用计算机算,Win10计算器怎么算二进制,win10计算器二进制使用教程
- Centos互信搭建
- 使用docker搭建nodebb论坛
- 微信web端生成支付二维码
- SQLserver 外键语句出现“引用了无效的表”
- 上网行为管理系统”有什么样的功能?
- HTML写一个登录框样式
- java笔记之网络知识--—TCP
热门文章
- 计算机配置型号及主要技术指标,显卡性能看什么参数(新手必备的显卡性能知识全解)...
- xp系统设置锁定计算机,教你XP电脑中有效的设置自动锁屏的方法
- 块格式化上下文(Block Formatting Context,BFC)
- 《深入分析Linux内核源代码》读书、私藏笔记大放送
- Mesos源码分析(9): Test Framework的启动
- mysql创建定时任务
- iOS-常用的第三方框架的介绍
- swift 2.0 语法 循环
- seajs常用API整理
- Java:Swing篇,实现JList、JTextArea的自动滚动,实时刷新功能