public class GraphicsStatsService
extends IGraphicsStats.Stub
This service's job is to collect aggregate rendering profile data. It
does this by allowing rendering processes to request an ashmem buffer
to place their stats into. This buffer will be pre-initialized with historical
data for that process if it exists (if the userId & packageName match a buffer
in the historical log)
This service does not itself attempt to understand the data in the buffer,
its primary job is merely to manage distributing these buffers. However,
it is assumed that this buffer is for ThreadedRenderer and delegates
directly to ThreadedRenderer for dumping buffers.
MEMORY USAGE:
This class consumes UP TO:
1) [active rendering processes] * (ASHMEM_SIZE * 2)
2) ASHMEM_SIZE (for scratch space used during dumping)
3) ASHMEM_SIZE * HISTORY_SIZE
This is currently under 20KiB total memory in the worst case of
20 processes in history + 10 unique active processes.