1.内存指标
Item | 全称 | 含义 | 等价 |
---|---|---|---|
USS | Unique Set Size | 物理内存 | 进程独占的内存 |
PSS | Proportional Set Size | 物理内存 | Pss =Uss+按比例包含共享库 |
RSS | Resient Set Size | 物理内存 | RSS=USS+包含共享库 |
VSS | Virtual Set Size | 虚拟内存 | VSS = RSS+未分配实际物理内存 |
内存的大小关系:VSS>RSS>=PSS>=USS
在实际分析中,一般是以PSS的内存为准,且也是最符合实际情况的统计值
2.使用
可以使用以下命令记录应用内存在不类型的RAM分配之间的划分情况
adb shell dumpsys meminfo package_name|pid [-d]
-d 标记会输出更多与Dalvik和ART内存占用情况相关的信息。
输出列出了应用当前实时的优点分配信息,以千字节(K)为单位。
- 获取全局的内存信息
除了通过上面的方式获取单个进程的内存信息,还可以获取系统整体内存情况。主要场景是用于确认单应用多进程的场景,对比下其他进程的当前内存状态,以及进程状态,我们要确保进程处理合理的状态。(比如UI进程退到后台要及时退到Cache状态,处于其他状态则要进行优化)
Total PSS by OOM adjustment:
683,512K: Native
...
854K: dumpsys (pid 19280)
851K: lmkd (pid 789)
843K: android.hardware.memtrack@1.0-service (pid 748)
...
396,026K: System
396,026K: system (pid 1597)
666,050K: Persistent
...
253,989K: com.android.systemui (pid 2326)
46,482K: com.huawei.systemserver (pid 2588)
40,122K: com.huawei.hiview (pid 2543)
...
47,613K: Persistent Service
34,164K: com.android.bluetooth (pid 20268)
475,283K: Foreground
242,908K: com.huawei.android.la