History log of /frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6fa646ab95de0967a79bb9a136e75623de2cc808 29-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Reduce pss collection amount, improve logging."
e17b445b6c813f6f9bc93a5e3811128a197ef50b 10-Jan-2018 Dianne Hackborn <hackbod@google.com> Reduce pss collection amount, improve logging.

Tuned rates that we collect PSS, to reduce how much we do
that heavy operation. Added a new way to determine
whether a process has changed to a state for the
"first" time -- now this is when it has gone to that
state for the first time since it was in a lower state.
This will reduce the amount of time we consider a
process to be first to only when it has previously
gone into a higher state than it had before.

Keep track of more fine-grained information about why we
collect a PSS sample (not just internal, but for a single
process, all processes because of a mem state change, all
processes because of a poll).

Started collecting RSS in various places, so we can start
looking at that w.r.t. PSS and see about transitioning to
it is a new primary metric.

Added logging for many of the places where the system
writes its configuration files, so we can more easily
see any bad behavior going on in those areas.

Added some currently disabled code to read smaps directly
instead of using fgets(). Probably won't help, but want
tot test.

Bug: 70859548
Test: atest CtsAppTestCases
Change-Id: I400dba0f3ae9c024df51c946cfa592561028b598
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
676d1ace1cc57d2335bfaabd92284d52d8fc4edf 26-Jan-2018 Yi Jin <jinyithu@google.com> Clean up the procstats dump enums and change component to use message.

Bug: 72415114
Test: manually flashed and run: dumpsys procstats --proto
Change-Id: Iea47fa41c04c3c6e8335e040086a0b5d65c22aaf
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
052e3149da48a8a841f5a974d60eb9d2109837de 20-Dec-2017 Dianne Hackborn <hackbod@google.com> Work on issue #70859548: Reduce amount of time spent collecting pss data

This slightly reduces the frequency we collect pss data, adjusting
some timings and adding back separate timings for when the device
is asleep. (Though note that the "same asleep" timings are currently
the same as "same awake," because those are already pretty infrequent.)

Also add some statistics to procstats to keep track of how many
pss samples have been taken, generally why, and how long they took

Bug: 70859548
Test: manual
Change-Id: If3c6cbd4ab045d2e4c00b48fe4257c4ec5ae3f33
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
f097d42f0c0a80a1c2d48f148346e6b0bf7a0f68 16-Dec-2017 Dianne Hackborn <hackbod@google.com> Move heavy-weight process state down to cached range.

This allows us to generally treat heavy-weight processes in
the background as cached processes, applying all of the limitations
we want for such things -- disable wake locks, etc.

Test: run-am-test ActivityManagerProcessStateTest
Bug: 63937884
Change-Id: I7c140c8f48188f6aa9c09731e83e3db4e4405e77
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
3accca05ddcad9d0b1b313eae49f273e39121d3c 20-Sep-2013 Dianne Hackborn <hackbod@google.com> Add major version code to platform.

It turns the version code into almost a 64-bit integer, with the
new major part being the upper 32 bits.

The only tricky part about this is the backup manager, since it
stored 32-bit version codes in its backup data sets. This is dealt
with by, when the major version code is not 0, writing MIN_INT as
the version code and following that by the full long version code,
which we can detect when reading. Note that this makes backup sets
containing apps with major version codes incompatible with older
versions of the platform.

Bug: 64459786
Test: Added in Change-Id: Iab8a682b62103babd6c16a56b8dc1e97d7078658
Change-Id: Ibfffe235bbfcf358b3741abd3f7197fdb063d3f3
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
9680cfae052a37969e4d3febc6a71ffda265030a 16-Sep-2017 Yi Jin <jinyithu@google.com> Implement procstats dumpsys section

Bug: 65690183
Test: tested manually using incident-report tool
Change-Id: I0c34e411dba8faf9f311c78701ac8f6bec824277
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
c23befa183a53af54ea1c4f6c6f0168e38c2636b 20-May-2016 Joe Onorato <joeo@google.com> Add data from /proc/pagetypeinfo to procstats.

This data tells us the number of pages of each type that
are available by page size. It is collected each time
the procstats snapshot is taken, and printed in the
checkin and verbose (dumpsys procstats -a) modes.

Change-Id: I14562eac15833617391c560638a9e7d239ef8db6
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
ef0a402f5811d326e4e8d35758ab5c348297f9f4 11-May-2016 Dianne Hackborn <hackbod@google.com> Fix issue #28400000: Settings memory UI still showing z-ram...

...but probably shouldn't.

Keep track of whether zram is being included in per-process pss and,
if so, don't add it on separately.

Change-Id: Ic945fc3deca8412272bb6019fe1be4b878cb763a
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
65adfeecd2acc4e63c00fc1f2073cc0b229f3467 08-Apr-2016 Joe Onorato <joeo@google.com> Add some tests for procstats, and fix some bugs that the tests uncovered.

Bug: 27045736
Change-Id: Ia910730c5a3a899c89aa63dd7ab48be62cf9cfef
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java
4eb64fdbcf899a81d0a6a04dc3658d03d9df8247 21-Mar-2016 Joe Onorato <joeo@google.com> Refactor ProcessStats.

- Pull most of the inner classes out into their own files.
- Move everything to a new android.app.procstats package.
- Move all of the code that was manipulating the big list
of longs to use the new SparseMappingTable class rather
than doing everything by hand. The logic is unchanged.
- Add a sequence number check to SparseMappingTable so
when the big list of longs and the individual tables are
reset, which happens somewhat independently, we can
assert when one of them doesn't get reset.
/frameworks/base/core/java/com/android/internal/app/procstats/ProcessStats.java