Firefox OS/Performance/Graphics Pipeline Instrumentation and Integration into the Cleopatra Profiler

From MozillaWiki
Jump to: navigation, search

Introduction

Currently, when we profile the Compositor thread in the b2g process with the Gecko Profiler, https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Profiling_with_the_Built-in_Profiler, we see a limited set of data. I'd like to introduce more detail into the Cleopatra Profiler that explains with some detail, why we have graphics issues. For example, some ideas are being implemented by Benoit Girard - http://benoitgirard.wordpress.com/

Project Plan

The project consists of identifying the various stages in the pipeline, identifying cases where the graphics pipeline is slow and why, and finally instrumenting the Cleopatra profiler to identify common slow cases.

To be successful in this project, the following has to be accomplished:

  1. Identify slow paths in the graphics pipeline
  2. Identify causes of the slow paths in the graphics pipeline
  3. Create error messages and integrate the causes up to the Cleopatra profiler data
  4. Modify the Cleopatra front end to display the data in a human readable way

Some data that would be useful would be: 1) Touch input events and position - This would be useful for frame uniformity 2) Vsync events 3) APZC display port data 4) Current layer data

Bugs

Link to any existing bugs here.

Contacts

Mason Chang

Proposal

http://benoitgirard.wordpress.com/ - For current work