Firefox OS/Performance/Tools/Data Sources and Tools for FxOS Perfomance Optimization
Introduction
Good performance data is necessary for developers to optimize, debug regressions, and to learn the best practices for developing on our platform. Therefore it is essential that the Firefox OS Performance team take a look at all of the available performance related data to identify what we have to work with right now and what other performance data we should work to expose in the future.
Performance Data Sources
On Device Data
Currently, Firefox OS posesses the ability to report out a number of performance related statistics in realtime. Figure 1 illustrates the current organization of the data gathering and expropriation.
The data is gathered by a set of observers that watch for events/changes in their respective performance areas and then report the changed stats via the observe message system. The sampling profiler and the child process actors set up observers to receive these events. The other main source of data is the memory sub-system which is polled by both the profiler and child actors to get memory statistics for each process.