一、概述
1、 内存指标概念
Item |
全称 |
含义 |
等价 |
USS |
Unique Set Size |
物理内存 |
进程独占的内存 |
PSS |
Proportional Set Size |
物理内存 |
PSS= USS+ 按比例包含共享库 |
RSS |
Resident Set Size |
物理内存 |
RSS= USS+ 包含共享库 |
VSS |
Virtual Set Size |
虚拟内存 |
VSS= RSS+ 未分配实际物理内存 |
故内存的大小关系:VSS >= RSS >= PSS >= USS
2、内存分析命令
常用的内存调优分析命令:
- dumpsys meminfo适用场景: 查看进程的oom adj,或者dalvik/native等区域内存情况,或者某个进程或apk的内存情况,功能非常强大;
- cat /proc/meminfo适用场景: 查看系统的详尽内存信息,包含内核情况;
- procrank适用场景: 查看进程的VSS/RSS/PSS/USS各个内存指标;
- free适用场景: 只查看系统的可用内存以及swap分区的情况;
- showmap适用场景: 查看进程的虚拟地址空间的内存分配情况;
- vmstat适用场景: 周期性地打印出进程运行队列、系统切换、CPU时间占比等情况;
二、 命令说明
1、dumpsys meminfo
1.1 dumpsys meminfo命令的输出结果分以下4部分:
序列 |
划分类型 |
排序 |
解释 |
|
1 |