From MozillaWiki
Jump to: navigation, search


Perfherder is an interactive dashboard intended to allow monitoring and analysis of automated performance tests run against Mozilla products (currently Firefox and Firefox for Android).

Perfherder is part of the Treeherder project. The production version of it lives at


  • Sheriffs (:igoldan, :bebe)
  • Developers (:sclements, :igoldan)


Develop tools and integration of them to assist sheriffs to find and report regressions to developers, and to assist developers in understanding the impact of their changes and potential fixes.

This includes:

  • Graphical display of performance data over time
  • An easy way to compare all performance tests for a given revision to another revision (or time range)
  • An alert system to provide notification when there has been a level shift in performance data, along with tools for filing bugs when such events occur
  • Integration with normal developer work flows for using the Try server and landing code

Non Goals

  • fixing tests
  • fixing harnesses
  • adding new tests
  • bisection of a range of commits to find the root cause

Dependencies / Who will use this

We have a dependency upon tools to generate data. Currently this is Talos, but the design is to allow all other types of tools to post here as well.

The other big dependency we have is TreeHerder. Right now we are tightly integrated into the project and use a lot of common data (branches, revisions, history, pushlog). We fully expect this to remain the case and will do our best to integrate as much as possible if it helps the workflow of the users.

The primary users will be:

  • sheriffs
  • developers

Secondary users will be:

  • manager (project, release)
  • qa


We welcome contributions to Perfherder! We track issues inside the Perfherder component on bugzilla, see below for a list of open bugs.

The contribution section of the Treeherder page has some handy resources for those just getting started. In general, if you have a development version of treeherder running, you're all set to hack on Perfherder! Just jump to:

If you have a question, jump on #perfherder on and look for :igoldan or :davehunt.

Source and docs

See the Treeherder page.

Bug Table

Full Query
ID Priority Component Summary Assigned to
1564833 P1 Perfherder [meta] Server side search in Alerts view Alexandru Irimovici
1809410 P1 Perfherder Graph View - Show 'create alert' button on datapoints with common alerts
1523037 P2 Perfherder Page titles for subtests are confusing Acasandrei Beatrice (needinfo me)
1651432 P2 Perfherder Perfherder UI tests need to be updated Acasandrei Beatrice (needinfo me)
1694335 P2 Perfherder Delete the remove_vcs_data management command Acasandrei Beatrice (needinfo me)
1711883 P2 Perfherder Compare View call to backend responds with 502 Bad Gateway Acasandrei Beatrice (needinfo me)
1689621 P2 Perfherder [meta] Monitor backfill bot’ stability on production Ionuț Goldan [:igoldan]
1723719 P2 Perfherder Link to devtools test documentation Julian Descottes [:jdescottes]
1605748 P2 Perfherder [meta] Perfherder regression filing should inform the group/builder of a regression
1722092 P2 Perfherder comparison browsertime (Btime) metrics of Try push with mozilla-central fails to load data, Perfherder request of m-c data fails with server error
1693051 P3 Perfherder Provide geomean extractor subtest in “free retriggers” suites Kash Shampur [:kshampur] ⌚EST
1265381 P3 Perfherder Consider alerting with less than 12 future data points if we're very confident there is a regression
1268247 P3 Perfherder Alert management UI doesn't really scale to uplifts
1316590 P3 Perfherder Compare view should allow viewing subtests across all tests
1343328 P3 Perfherder Switch to bigint to protect against auto_increment overflow
1481821 P3 Perfherder perfherder compare is very limited when developers are investigating a regression or making their test relevant or stable
1484714 P3 Perfherder make it easier to push to try and compare against a base revision
1500528 P3 Perfherder Make perfherder comparisons consistent across benchmarks
1501239 P3 Perfherder Test validity dashboard
1501241 P3 Perfherder [meta] Make states more manageable
1515338 P3 Perfherder State machine diagram
1519289 P3 Perfherder Remove usage of signature_hash in Perfherder
1520726 P3 Perfherder Check fixes for perf regressions
1520731 P3 Perfherder Directly retrigger & backfill
1522871 P3 Perfherder It would be very useful to have a link for the pushlog for each set of data visible in the graph
1528740 P3 Perfherder Notify on new alerts/no more data from existing alerts
1529090 P3 Perfherder No way to easily examine all the performance data for a try push
1532283 P3 Perfherder Improve & re enable nudge
1532995 P3 Perfherder Cover compare replicates view with FE tests
1539854 P3 Perfherder Timeranges in Perfherder URL are limited to 1, 2, 7, 14, 30, 60, 90 days
1543016 P3 Perfherder Android PGO platforms generating OPT metrics
1543780 P3 Perfherder Make{repo}/performance/signatures faster
1546054 P3 Perfherder Automatically email top alerts on a weekly basis
1551556 P3 Perfherder Add support to enable/disable alerting on suite and sub-test level
1558746 P3 Perfherder Reflect confirmed commits on alerts
1562178 P3 Perfherder [meta] Automate backfills and retriggers for alerts
1565516 P3 Perfherder [meta] Improvements to compare view
1569018 P3 Perfherder Graphs of try vs try pushes show irrelevant comparison points
1569022 P3 Perfherder graph backdrop for pushes should be based on base revision, not push date
1569024 P3 Perfherder select the right test for the graph backdrop when adding more test data to graph
1569590 P3 Perfherder Mention pending retriggers in compare view
1573131 P3 Perfherder Automatically identify backouts
1581533 P3 Perfherder Discussion: Improving performance regression detection
1582711 P3 Perfherder [meta] Introduce noise alerts for perf tests
1585650 P3 Perfherder [meta] Provide boxplots in Graphs view
1587766 P3 Perfherder build times should be grouped by dimension sccache hit rate
1590627 P3 Perfherder Clean databases of remnants of old unused frameworks
1591044 P3 Perfherder New Tier column to Test Validity Dashboard
1591045 P3 Perfherder Backfill reports should consider indirect alerts also
1591053 P3 Perfherder Change logic for the Graphs view "Add related configurations" hyperlinks
1593206 P3 Perfherder Make application fields mandatory in validation schema
1600668 P3 Perfherder Error out if PERFHERDER_DATA is malformed
1601952 P3 Perfherder Use The Mann-Whitney-U test
1605247 P3 Perfherder Consider adding more options for date ranges
1611203 P3 Perfherder Make it possible to embed Perfherder graphs in other pages
1615267 P3 Perfherder Tests View: Consistent renaming from health/validity to Tests View
1615268 P3 Perfherder [meta] Improvements to Tests View
1616191 P3 Perfherder Provide server side filtering by option
1616240 P3 Perfherder Provide backend test coverage for server side search
1616242 P3 Perfherder Provide frontend test coverage for server side search
1617871 P3 Perfherder Move long-series views to BigQuery?
1620736 P3 Perfherder Graphs View - Add Table view param in URL
1620737 P3 Perfherder Graphs View - When toggle to Table View, it should focus on table
1620739 P3 Perfherder Graphs View - TableView and GraphTooltip component share helpers functions
1620741 P3 Perfherder Graphs View - Table view could have trends and outliers navigation to improve accessibility
1622564 P3 Perfherder Improve performance of graphs view when showing a large date range
1622567 P3 Perfherder Add trend lines to graphs
1622568 P3 Perfherder Allow base/new revisions to be edited from the compare view
1622569 P3 Perfherder Add graphical plots for subtests
1622572 P3 Perfherder Enable re-triggering test runs with profiler enabled
1622573 P3 Perfherder Data Review of Compare View
1622576 P3 Perfherder Add the ability to compare more than two revisions at the same time
1622578 P3 Perfherder Add the ability to use the shortened hash for a commit in the compare view
1622796 P3 Perfherder Add release tag to sheriffing template
1622829 P3 Perfherder Consider changing default display to more than 2 days
1623168 P3 Perfherder Expose information on modality of the results and alert when modality changes between results
1627922 P3 Perfherder Reassign Alerts dialog doesn't have autofocus
1633660 P3 Perfherder Attribute inconsistency in alert summary serializer
1635085 P3 Perfherder Provide test coverage for when Compare view is changing its URL
1635127 P3 Perfherder Alert summaries should show the status of linked bug
1637258 P3 Perfherder Please add the 'replicates' view button to Browsertime perfherder compares
1639112 P3 Perfherder Consider making SecretaryTool a singleton
1639248 P3 Perfherder Feature request to save perfherder comparisons for future lookup
1639277 P3 Perfherder tp6 tests unnecessarily require multiple tasks to increase confidence on compare chooser
1639308 P3 Perfherder Show the last commit message when comparing two revisions
1641623 P3 Perfherder Add a numerical summary of Perfherder improvement/regression to the Compare Revisions view
1644707 P3 Perfherder Perfhderder: Add test for platform dropdown options order
1646259 P3 Perfherder Add/modify perfherder graph view to better communicate noise
1649152 P3 Perfherder Don't include subtest names in alert summary title
1649156 P3 Perfherder Distinguish subtest items from test items in alert summaries
1653623 P3 Perfherder add ability to remove outliers in perfherder compare view
1653624 P3 Perfherder add ability to change statistical method in use on perfherder compare view
1655019 P3 Perfherder Display a name/unit for summary results
1655667 P3 Perfherder [Perfherder] Allow a comparison screen to edit the revisions compared
1665100 P3 Perfherder Perherder should be able to show task name for a graph
1667888 P3 Perfherder Add test descriptions to Tests View in Perfherder
1684946 P3 Perfherder browsertime vismet tasks with --rebuild flag all reuse a single test result. Perfherder says Confidence is Infinity (high).
1689584 P3 Perfherder Provide POC for integrating Mann-Whitney-U
1689586 P3 Perfherder Provide actual plan for integrating MWU
1693053 P3 Perfherder Integrate new strategy for displaying “free retriggers” from subtests
1700970 P3 Perfherder Perfherder compare Retrigger Jobs button no longer retriggers jobs
1701615 P3 Perfherder Group alert items in tests+subtests to visually distinguish them easier.
1720323 P3 Perfherder Disable alert generation on backfilled tasks
1723073 P3 Perfherder Have properties to distinguish manual/auto backfilled jobs
1724140 P3 Perfherder Show the graph with runs for before/after at the same time
1727787 P3 Perfherder Perfherder should show `unit` and `lower_is_better` in addition to existing color-coding on e.g. the Alert view
1728295 P3 Perfherder Improve test coverage for report_backfill_outcome command
1729665 P3 Perfherder Add a performance tab in Push Health
1734898 P3 Perfherder Add support for filtering out matches in perfherder compare
1741786 P3 Perfherder Performance regression detected between m-c build and try build with the same revision
1742479 P3 Perfherder Ingest the application version from perfherder data
1744024 P3 Perfherder fission/non-fission awsy jobs are mixed up in the display, and also in retrigger
1747357 P3 Perfherder Allow storage for replicates
1751158 P3 Perfherder Last page is not removed from pagination control when resolving a previous alert
1754151 P3 Perfherder Perfherder subtest in Compare View misses the first letter of the test name
1756774 P3 Perfherder Tests View - Changing the framework should reset the table to page 1
1502805 P3 Perfherder Integrate browser notifications xuan pan
1674370 -- Perfherder [meta] Use test replicates in Perfherder CompareView
1689373 -- Perfherder [meta] Provide plan for using Mann-Whitney-U alongside student' s t-test
1698545 -- Perfherder [meta] Link to test documentation
1709778 -- Perfherder [meta] Distinguish between auto/manual backfills
1809467 -- Perfherder frequent intermittent failures on collapsable_rows_tests.jsx and, disabled for now

122 Total; 122 Open (100%); 0 Resolved (0%); 0 Verified (0%);