
Android性能优化
Android系统攻城狮
《Android系统多媒体进阶实战》一书作者
展开
-
Android/Linux性能分析工具推荐(一百零二)
iostat: 输出CPU的统计信息和所有I/O设备的输入输出(I/O)统计信息。mpstat: 关于CPU的详细信息(单独输出或者分组输出)。pidstat: 关于运行中的进程/任务、CPU、内存等的统计信息。sar: 保存并输出不同系统资源(CPU、内存、IO、网络、内核等。。。)的详细信息。sadc: 系统活动数据收集器,用于收集sar工具的后端数据。sa1: 系统收集并存储sadc数据文件的二进制数据,与sadc工具配合使用sa2: 配合sar工具使用,产生每日的摘要报告。sadf:.原创 2020-12-22 19:49:25 · 516 阅读 · 1 评论 -
Android/Linux之procrank查内存工具(九十九)
1.procrank_linux for Linux# git clone https://github.com/lanxinyuchs/procrank_linux# cd procrank_linux# make # sudo cp procrank /usr/local/bin# sudo procrank2.procrank for Android# cd procrank_linux# mm # su# ./procrank原创 2020-12-22 19:13:12 · 480 阅读 · 0 评论 -
Linux/Android之perf追内存泄漏工具(api级别)(一百)
一、安装# sudo apt install linux-tools-common# sudo apt install linux-tools-5.4.0-59-generic# perf topperf list查看当前系统支持的性能事件;perf bench对系统性能进行摸底;perf test对系统进行健全性测试;perf stat对全局性能进行统计;perf top可以实时查看当前系统进程函数占用率情况;perf probe可以自定义动态事件;perf kmem针对slab子.原创 2020-12-22 19:33:51 · 2285 阅读 · 0 评论 -
Linux/Android之sar查看IO/CPU占用率(一百零一)
# sudo apt install sar1.查看内存利用率信息# sar -r2.CPU 利用率信息# sar -u3.交换空间利用率信息# sar -S4.内核表统计信息 # sar -v5.交换信息# sar -W6.任务创建与系统转换信息# sar -w7.TTY 设备信息# sar -y8.队列长度和平均负载# sar -q...原创 2020-12-22 19:47:51 · 1414 阅读 · 0 评论 -
Linux内存buffer与cache区别
一、首先大概了解一下计算机CPU、Cache、Buffer、内存、硬盘、SWAP CPU也称为中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。中央处理器主要由三核心部件组成,运算器、控制器和总线(BUS),运算器又主要由算术逻辑单元(ALU)和寄存器(RS)组成。 CPU Cache(缓存区)即高速缓冲存储器,集成在CP转载 2020-12-01 21:24:12 · 334 阅读 · 0 评论 -
Android性能优化之虚拟机调优
介绍完深入学习Android:虚拟机&运行时之后,很多小伙伴问我,你描述的这些知识结构看起来艰深晦涩高大上,实际工作中能有多大用途呢?今天我就简单举个例子。众所周知,我们的Android App运行在Java虚拟机之上,而Java是一门带GC的语言。在虚拟机进行垃圾回收的时候,要做一件很形象的事叫做STW(stop the world);也就是说,为了回收那些不再使用的对象,虚拟机...转载 2020-03-02 00:24:14 · 1072 阅读 · 0 评论 -
Android性能优化系列
Android性能优化原创 2020-01-19 17:27:14 · 375 阅读 · 0 评论 -
Android查看CPU和GPU使用率(五十五)
参考一参考二1、top -t 能打印出线程级别的CPU使用情况0.打印进程的堆栈信息。从堆栈信息里可以通过.so辨别哪个线程是干什么的,从而在 top -t 的结果里去查找你想要的那个线程的 CPU 使用情况。# debuggerd -b <pid>1.查看高通821 GPU使用率# adb shell cat /sys/class/kgsl/kgsl-3d0/g...原创 2018-03-27 17:31:12 · 31634 阅读 · 4 评论 -
Android 开机优化
原址问题描述开机时间相对参考机过慢,大约慢15s左右。Android 系统7.0。问题分析开机问题涉及的层次较多,大致有bootloader–>kernel–>Zygote–>PMS–>AMS–>Launcher 可以借助bootchart来分析,也可以直接通过log分析。不幸的是本项目机器因未知原因导致无法抓取到bootchart。 幸好在我浏览...转载 2018-09-06 16:57:31 · 1164 阅读 · 0 评论 -
Android 性能优化之TraceView的使用
原址TraceView简介工欲善其事,必先利其器。要想分析Android的性能问题,比如卡顿了之类的,那么就必需掌握TraceView工具的使用。TraceView 是 Android SDK 中内置的一个工具,它可以加载 trace 文件,用图形的形式展示代码的执行时间、次数及调用栈,便于我们分析,以此来优化 App 运行效率。生成trace文件在进行分析以前,必需要生成trace文件,可以用下...转载 2018-04-26 13:55:47 · 987 阅读 · 0 评论 -
正确使用Android性能分析工具——TraceView
原址前面唠叨最近公司app中有些列表在滑动的时候会有卡顿现象,我就开始着手解决这些问题,解决问题之前首先要分析列表滑动的性能瓶颈在什么地方。因为之前不会正确使用TraceView这个工具,主要是看不懂TraceView界面下方数据指标的值代表什么意思…以前我用StopWatch类来分析性能,现在觉得弱爆了…不过有些地方StopWatch工具类还是很简单好用的~网上可以找了很多博客来介绍这个工具的使...转载 2018-04-26 13:54:43 · 342 阅读 · 0 评论 -
Android Graphic 架构
原址这篇文章中,我们会展示android Graphic 的架构.Androidframework我们知道Android framework 提供了两大类graphicrender API.一是用Canvas 类也称2D renderer另外一种是直接用OpenGL 接口, 通常称为3D renderer path app. 下图是用2Drenderer path 的 Graphic stack....转载 2018-04-11 10:40:25 · 2862 阅读 · 0 评论 -
Mac使用systrace/monitor/adb等工具(五十一)
1.Android monitor# cd android-sdks/tools# ./monitor&2.Android SDK Manager# ./android3.fastboot # cd platform-tools# ./fastboot4.systrace.py# cd platform-tools/systrace# systrace.py .....原创 2018-04-03 20:19:28 · 2372 阅读 · 0 评论 -
android源码查找测试demo
frameworks/native/opengl/tests原创 2018-04-04 14:24:39 · 570 阅读 · 0 评论 -
Android Studio GPU/CPU/Network/Memory monitor使用
cpu monitor用法参考问题原因: AS 1.4版本以后开始支持GPU monitor,到AS 3.0把它去掉了,这里选用AS 2.3.2版本.Android Studio升级3.0以后使用Android Profiler替代DDMS 和 SystraceLayout Inspector 替代Hierarchy Viewer。解决办法:<1>.如果你仍需使用以...原创 2018-04-10 15:18:56 · 3263 阅读 · 0 评论 -
arm和thumb指令模式
目录:frameworks/native/opengl/libagl文件:Androi.mk light.cpp默认情况下,arm目标二进制会以thumb的形式生成(16位),你可以通过设置这个变量为arm如果你希望你的module是以32位指令的形式。arm:32位指令模式thumb: 16位指令模式(thumb指令不如arm指令效率高)在编译的时候告诉系统编译特定的类型:LOCAL_ARM_M...原创 2018-04-08 14:53:11 · 1781 阅读 · 0 评论 -
Android之GPU过度绘制与图形渲染优化
原址前言本文主要对过度绘制和图形渲染做一个概念性的描述。同时以案例方式列出一些简单适用的优化措施。如果你已对过度绘制有过一些了解,那么你应该明白,仅是简单的层级优化对过度绘制的改善是很小的。所以,这时候你可以参考这篇文章:优化Android过度绘制另外如果你还想知道更多关于View优化原理,可以参考 Google 发布的 Android 性能优化典范概念GPU过度绘制是指在一个像素点上绘制多次(超...转载 2018-04-08 13:18:51 · 841 阅读 · 0 评论