APP_CPU使用率
一、CPU使用率原理
android系统内核是基于linux,在linux系统下 CPU 利用率分为用户态、系统态、空闲态
用户态:表示CPU处于用户态执行的时间
系统态:系统内核执行的时间
空闲态:空闲系统进程执行的时间
CPU利用率=CPU执行非系统空闲进程的时间/CPU总的执行时间。这里的时间含义如下:
HZ: Linux 核心每隔固定周期会发出 timer interrupt(时钟中断),HZ是用来定义每一秒有几次时钟中断。例如 HZ 为1000,就代表每秒有1000 次时钟中断。
Jiffies: 在Linux的内核中,有一个全局变量:Jiffies。Jiffies代表时间。它的单位随硬件平台的不同而不同。Jiffies的单位就是1/HZ
Intel 平台Jiffies的单位是1/100秒,这就是系统所能分辨的最小时间间隔。每个CPU时间片,Jiffies都要加1
CPU利用率计算公式:CPU利用率=(用户态Jiffies + 系统态 Jiffies)/ 总Jiffies
二、CPU测试方法
使用top命令查看哪些进程是CPU的主要消耗者
>adb shell
>top --help
-m 最多显示多少个进程
-n 刷新次数
-d 刷新间隔时间(默认5秒)
-s 按哪列排序
adb shell top命令
> adb shell top
第一组数据的含义:
400%cpu: CPU总量
33%user: 用户空间占用CPU的百分比
0%nice: 改变过优先级的进程占用cpu的百分比
30%sys 内核空间占用cpu的百分比
337%idle 空闲cpu百分比
0%iow IO等待占用cpu的百分比
0%irq 硬中断(Hardware IRQ)占用cpu的百分比
0%sirq 软中(Software Interrupts)占用CPU的百分比
第二组数据的含义:
PID 进程id
USER: 进程所有者
PR:进程优先级
NI: nice值。负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES:进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR:共享内存大小,单位kb
S :进程状态:D=不可中断的睡眠状态, R=运行, S=睡眠, T=跟踪/停止, Z=僵尸进程
%CPU:上次更新到现在的CPU时间占用百分比
%MEM:进程使用的物理内存百分比
TIME+:进程使用的CPU时间总计,单位1/100秒
- adb shell dumpsys cpuinfo [pkg or pid]
该程序占用20%,其中9.8%是user,10%是kernel(内核)
查看单个应用的cpu占用情况:
APP_CPU使用率相关推荐
- java 正则 cpu 100_这六个原因真的可以使Java应用程序的CPU使用率飙升到100%吗?...
点击上方的"代码农户的冥想记录",然后选择"设为明星" 高质量文章,及时交付 问题 1. 无限while循环会导致CPU使用率飙升吗? 2.经常使用Young ...
- 美国 2006 年机器学习和知识发现年会数据挖掘使用率较高算法排名
在美国 2006 年机器学习和知识发现年会,数据挖掘(Data Mining)哪些算法使用率较高?现场投票结果可以给我们一点线索.数据挖掘有十大经典算法为:C4.5,K-Means,SVM,Aprio ...
- java linux cpu 多核 负载不均匀,系统CPU负载过高、CPU使用率不高的问题
(1).问题 线上Tomcat服务器CPU的负载非常高,但是CPU使用率正常,如图: (2).问题排查 1.首先查看是哪些进程的CPU占用率最高(如下可以看到详细的路径) ps -aux --sort ...
- zabbix自动发现oracle表空间并监控其使用率
监控需求 Oracle表空间使用率实时监控,当表空间使用率达到95%时触发告警机制.Oracle表空间分为系统默认表空间和用户创建的表空间,而表空间又有自动扩展和非自动扩展两种类型,用户(DBA)在创 ...
- 编程语言使用率的统计与简单分析
这里有一个统计: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html 2011年的前几名依次是:Java, C, C++, ...
- WPF 动态模拟CPU 使用率曲线图
在工作中经常会遇到需要将一组数据绘制成曲线图的情况,最简单的方法是将数据导入Excel,然后使用绘图功能手动生成曲线图.但是如果基础数据频繁更改,则手动创建图形可能会变得枯燥乏味.本篇将利用Dynam ...
- java 分配cpu使用率_Java-JVM-CPU使用率达到100%
我有一个Java程序,该程序有时会同时变成100%CPU使用率和睡眠状态.该程序不是多线程的. 环顾四周,我认为最可能的原因是我对垃圾收集运行Java解释器的方式中的错误或某些不匹配.我只能认为100 ...
- win10句柄数比win7多 cpu占用率 高_Win10更新再出问题!CPU使用率高+损坏SSD,修复方法来了...
Win10的系统更新,真的是跟拆盲盒一样时刻面临着"惊喜". 毕竟,win10系统的更新出错,都不是一天两天的事情了,完全让人吃不消. 上次win10 2004号称最稳定的版本,乐 ...
- java cms cpu占用率_cpu使用率过高和jvm old占用过高排查过程
今天断断续续的收到管理平台的异常报警,cpu占用过高和jvm old占用过高,这个时候赶紧去排查原因,下面记录了我的排查过程,可能里面还有不正确的地方,欢迎各位大佬指正,也欢迎大家关于类似的案例一起交 ...
最新文章
- MySQL查看及修改字段的字符集
- 或许每条喵咪上辈子都是陨落的码农
- SVN 版本库管理实践
- python整数转换字符串_Python | 将字符串转换为整数列表
- IDEA:vue中缺少vue-quill-editor富文本插件
- 出现“cannot identify image file /.DS_Store'”问题解决的办法
- mkdir 与mkdir -p 区别
- ssh scp不用输入密码
- 深入理解深度学习中的【卷积】和 feature map
- HTTP协议基本原理简介(一)
- 一文概述深度学习中的正则化(含Python代码)
- bzoj1045题解
- python图书馆抢座_Python-Requests模拟登录-实现图书馆座位自动预约
- Jmeter-使用http proxy代理录制脚本
- 学习 Elasticsearch 的相关使用
- win10系统文件拖拽卡顿_win10电脑中鼠标拖动窗口有延迟如何解决
- python三年a班的成绩_Python题集:2019春Python程序设计选修课习题笔记
- c语言字符串的题库,C考试系统题库含答案程序题
- 中国网络伪黑客现象初探
- 全网舆情大数据接口学习