OSDN Git Service

Use /proc/pid/smaps_rollup when available
authorDaniel Colascione <dancol@google.com>
Thu, 27 Jul 2017 10:33:34 +0000 (03:33 -0700)
committerDaniel Colascione <dancol@google.com>
Tue, 22 Aug 2017 20:49:33 +0000 (13:49 -0700)
commit6c51810b2b64e1a26ee89f8ba1dd7000a936b6cf
tree0484ef01f44f298bd1f1f1e6fd71ac5a4d1abce6
parent0862898a34014389fa6657eb75098510c1bc0d7e
Use /proc/pid/smaps_rollup when available

smaps_rollup saves CPU time by having the kernel sum smaps fields
before formatting each VMA's smaps; this way, user-space gets a single
dummy smaps entry with pre-summed fields, making it much less
expensive to measure PSS of large processes.

This change makes the Android framework attempt to use smaps_rollup
when available; we fall back to regular smaps when it isn't.

Test: pssbench; see log message about using smaps_rollup
Bug: 63439864
Change-Id: I66e207b02626e3287791e1348f35f58a8d94efe9
core/jni/android_os_Debug.cpp
core/jni/android_os_Debug.h [new file with mode: 0644]
core/jni/android_util_Process.cpp