Auto-tools/Projects/Signal From Noise: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 40: Line 40:
== Bugs  ==
== Bugs  ==
* Signal from Noise bugs are marked with the [https://bugzilla.mozilla.org/buglist.cgi?esolution=---&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=%5bSfN%5d SfN whiteboard entry]
* Signal from Noise bugs are marked with the [https://bugzilla.mozilla.org/buglist.cgi?esolution=---&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=%5bSfN%5d SfN whiteboard entry]
* Fixed signal from noise bugs: https://bugzilla.mozilla.org/buglist.cgi?list_id=5017261;resolution=FIXED;status_whiteboard_type=allwordssubstr;query_format=advanced;status_whiteboard=[SfN]
* Fixed signal from noise bugs: https://bugzilla.mozilla.org/buglist.cgi?list_id=5017261;resolution=FIXED;status_whiteboard_type=allwordssubstr;query_format=advanced;status_whiteboard=[SfN]



Revision as of 16:34, 6 December 2012

Signal From Noise

Making sense of the Talos results

Overview

Historically we have had an 'acceptable' range of fluctuation in our talos number. Our methods of managing and tracking the numbers have all been surrounding running a test multiple times and generating a single number that we can track over time. This is great for long term tracking, but when looking at what that number represents and why it fluctuates there is a lot of room for error.

We want to do a better job of generating our 1 tracking number. We also want to revisit the way we are testing things and make sure we are running the right tests and the correct number of iterations to get a reliable data point. Most likely this involves looking at every page that we have and tracking that page individually, not as a small piece of a larger set of pages.

Most of this project is outlined well at on the [Talos Investigation] page.

Goals

  • define what is signal and what is noise
  • understand the distribution of numbers and have confidence that our representation is meaningful
  • ensure our tests are testing the right things
  • return performance regression results per push and posted to tbpl in real time
  • provide tools to quickly investigate performance regressions, compare changesets/branches, and identify trends

Drivers

  • Datazilla: jeads
  • Talos: jhammel, jmaher
  • Metrics: christina (as needed)

Meetings

Meetings are every Thursday at 11AM Pacific Time.

  • Notes from the meetings
  • The Datazilla project is holding Datazilla focus group meetings with interested developers to judge our progress toward fixing use cases that developers and tree sheriffs care about.

Status

  • Performance Testing Reports:
    • November 2011 - TODO LINK ME
    • November 2012 - TODO LINK ME
  • What we do with the data after collecting it - TODO LINK ME

Bugs

UI Prototype

The prototype user interface can be reached on Mozilla-MPT by adding:

10.8.73.31 datazilla

To your /etc/hosts file and then directing your browser to:

/datazilla/views

The source code for datazilla can be found at https://github.com/jeads/datazilla

Mockups

A set of user interface mockups can be found here Media:TalosSignalFromNoiseMocks.pdf. This document presents a collection of ideas for extending the graphs-new interface to manage different types of data with multiple visualization strategies.

Use Cases

Currently:

  • Firefox developer:
    • push patch to mozilla-central, expect green talos results
      • all results are green unless test fails to complete, then it is red
    • notification to dev.tree-management indicates a regression
      • developer goes to graphs-new and looks at the (test, platform, branch) graph
      • maybe compares to other platforms or branches
  • Talos developer
    • adds new feature to talos with expected change in numbers
    • run change side by side as a new test name for 1 week
    • browse to graphs-new to view new_test vs old_test to look at raw data points over a few days on each platform

Proposed 1 (assuming 1% deviation):

  • Firefox developer
    • push patch to mozilla-central, expect green talos results
      • number outside of 2% from gold standard, run turns orange
      • orange run has link on tbpl to graph server
      • graph server has a quick line of historical data and other platforms
      • then a focused section of what the gold standard is and what that run produced
      • it would be nice to see what the previous 5 runs had in terms of numbers, as well as all other platforms
    • no need for notification mails to dev.tree-management since this is managed in tbpl
    • FLAW: if firefox adjusts the standard number (up or down), then how do we call it the new standard?
      • maybe the web interface can have a way to change the number on the fly and put a bug/comment for the adjustment
  • Talos developer
    • adds new feature to talos with expected change in numbers
    • while pushing add an entry to the graph server of the new expected number
    • no need for side by side since we are just comparing to a known standard number

Data

Current:

  • data from tests (tp5 sample)
    • noisy output on test console (coming from pageloader)
NOISE: |i|pagename|median|mean|min|max|runs|
NOISE: |0;thesartorialist.blogspot.com;852;864.3333333333334;809;1135;951;852;920;865;809;858;851;1135;836;837
NOISE: |1;cakewrecks.blogspot.com;264;266.55555555555554;252;651;651;263;252;273;264;275;260;292;268;252
    • data sent to the graph server
0,852.00,thesartorialist.blogspot.com
1,264.00,cakewrecks.blogspot.com

Right now we are sending the median value (without the highest value in the set) to the graph server for each page. On the graph server, we [calculate our metric] for tp5 by averaging all the uploaded median values except for the max value.

  • TODO* define the perf counters that we collect and upload.
  • how it is stored
  • volume

Proposed

  • data from tests
  • how it is stored
  • volume

Links

Thesis