Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/testing/perfdocs/generated/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 290 kB image not shown  

Quelle  talos.rst   Sprache: unbekannt

 
=====
Talos
=====

Talos is a cross-platform Python performance testing framework that is specifically for
Firefox on desktop. New performance tests should be added to the newer framework
`mozperftest </testing/perfdocs/mozperftest.html>`_ unless there are limitations
there (highly unlikely) that make it absolutely necessary to add them to Talos. Talos is
named after the `bronze automaton from Greek myth <https://en.wikipedia.org/wiki/Talos>`_.

.. contents::
   :depth: 1
   :local:

Talos tests are run in a similar manner to xpcshell and mochitests. They are started via
the command :code:`mach talos-test`. A `python script <https://searchfox.org/mozilla-central/source/testing/talos>`_
then launches Firefox, which runs the tests via JavaScript special powers. The test timing
information is recorded in a text log file, e.g. :code:`browser_output.txt`, and then processed
into the `JSON format supported by Perfherder <https://searchfox.org/mozilla-central/source/testing/mozharness/external_tools/performance-artifact-schema.json>`_.

Talos bugs can be filed in `Testing::Talos <https://bugzilla.mozilla.org/enter_bug.cgi?product=Testing&component=Talos>`_.

Talos infrastructure is still mostly documented `on the Mozilla Wiki <https://wiki.mozilla.org/TestEngineering/Performance/Talos>`_.
In addition, there are plans to surface all of the individual tests using PerfDocs.
This work is tracked in `Bug 1674220 <https://bugzilla.mozilla.org/show_bug.cgi?id=1674220>`_.

Examples of current Talos runs can be `found in Treeherder by searching for "Talos" <https://treeherder.mozilla.org/jobs?repo=autoland&searchStr=Talos>`_.
If none are immediately available, then scroll to the bottom of the page and load more test
runs. The tests all share a group symbol starting with a :code:`T`, for example
:code:`T(c d damp g1)` or :code:`T-gli(webgl)`.

Running Talos Locally
*********************

Running tests locally is most likely only useful for debugging what is going on in a test,
as the test output is only reported as raw JSON. The CLI is documented via:

.. code-block:: bash

    ./mach talos-test --help

To quickly try out the :code:`./mach talos-test` command, the following can be run to do a
single run of the DevTools' simple netmonitor test.

.. code-block:: bash

    # Run the "simple.netmonitor" test very quickly with 1 cycle, and 1 page cycle.
    ./mach talos-test --activeTests damp --subtests simple.netmonitor --cycles 1 --tppagecycles 1


The :code:`--print-suites` and :code:`--print-tests` are two helpful command flags to
figure out what suites and tests are available to run.

.. code-block:: bash

    # Print out the suites:
    ./mach talos-test --print-suites

    # Available suites:
    #  bcv                          (basic_compositor_video)
    #  chromez                      (about_preferences_basic:tresize)
    #  dromaeojs                    (dromaeo_css:kraken)
    # ...

    # Run all of the tests in the "bcv" test suite:
    ./mach talos-test --suite bcv

    # Print out the tests:
    ./mach talos-test --print-tests

    # Available tests:
    # ================
    #
    # a11yr
    # -----
    # This test ensures basic a11y tables and permutations do not cause
    # performance regressions.
    #
    # ...

    # Run the tests in "a11yr" listed above
    ./mach talos-test --activeTests a11yr

Running Talos on Try
********************

Talos runs can be generated through the mach try fuzzy finder:

.. code-block:: bash

    ./mach try fuzzy

The following is an example output at the time of this writing. Refine the query for the
platform and test suites of your choosing.

.. code-block::

    | test-windows10-64-qr/opt-talos-bcv-swr-e10s
    | test-linux64-shippable/opt-talos-webgl-e10s
    | test-linux64-shippable/opt-talos-other-e10s
    | test-linux64-shippable-qr/opt-talos-g5-e10s
    | test-linux64-shippable-qr/opt-talos-g4-e10s
    | test-linux64-shippable-qr/opt-talos-g3-e10s
    | test-linux64-shippable-qr/opt-talos-g1-e10s
    | test-windows10-64/opt-talos-webgl-gli-e10s
    | test-linux64-shippable/opt-talos-tp5o-e10s
    | test-linux64-shippable/opt-talos-svgr-e10s
    | test-linux64-shippable/opt-talos-damp-e10s
    > test-windows7-32/opt-talos-webgl-gli-e10s
    | test-linux64-shippable/opt-talos-bcv-e10s
    | test-linux64-shippable/opt-talos-g5-e10s
    | test-linux64-shippable/opt-talos-g4-e10s
    | test-linux64-shippable/opt-talos-g3-e10s
    | test-linux64-shippable/opt-talos-g1-e10s
    | test-linux64-qr/opt-talos-bcv-swr-e10s

      For more shortcuts, see mach help try fuzzy and man fzf
      select: <tab>, accept: <enter>, cancel: <ctrl-c>, select-all: <ctrl-a>, cursor-up: <up>, cursor-down: <down>
      1379/2967
    > talos

At a glance
***********

-  Tests are defined in
   `testing/talos/talos/test.py <https://searchfox.org/mozilla-central/source/testing/talos/talos/test.py>`__
-  Treeherder abbreviations are defined in
   `taskcluster/kinds/test/talos.yml <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/talos.yml>`__
-  Suites are defined for production in
   `testing/talos/talos.json <https://searchfox.org/mozilla-central/source/testing/talos/talos.json>`__

Test lifecycle
**************

-  Taskcluster schedules `talos
   jobs <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/talos.yml>`__
-  Taskcluster runs a Talos job on a hardware machine when one is
   available - this is bootstrapped by
   `mozharness <https://searchfox.org/mozilla-central/source/testing/mozharness/mozharness/mozilla/testing/talos.py>`__

   -  mozharness downloads the build, talos.zip (found in
      `talos.json <https://searchfox.org/mozilla-central/source/testing/talos/talos.json>`__),
      and creates a virtualenv for running the test.
   -  mozharness `configures the test and runs
      it <https://wiki.mozilla.org/TestEngineering/Performance/Talos/Running#How_Talos_is_Run_in_Production>`__
   -  After the test is completed the data is uploaded to
      `Perfherder <https://treeherder.mozilla.org/perf.html#/graphs>`__

-  Treeherder displays a green (all OK) status and has a link to
   `Perfherder <https://treeherder.mozilla.org/perf.html#/graphs>`__
-  13 pushes later,
   `analyze_talos.py <http://hg.mozilla.org/graphs/file/tip/server/analysis/analyze_talos.py>`__
   is ran which compares your push to the previous 12 pushes and next 12
   pushes to look for a
   `regression <https://wiki.mozilla.org/TestEngineering/Performance/Talos/Data#Regressions>`__

   -  If a regression is found, it will be posted on `Perfherder
      Alerts <https://treeherder.mozilla.org/perf.html#/alerts>`__

Test types
**********

There are two different species of Talos tests:

-  Startup_: Start up the browser and wait for either the load event or the paint event and exit, measuring the time
-  `Page load`_: Load a manifest of pages

In addition we have some variations on existing tests:

-  Heavy_: Run tests with the heavy user profile instead of a blank one
-  WebExtension_: Run tests with a WebExtension to see the perf impacts extension have
-  `Real-world WebExtensions`_: Run tests with a set of 5 popular real-world WebExtensions installed and enabled.

Different tests measure different things:

-  Paint_: These measure events from the browser like moz_after_paint, etc.
-  ASAP_: These tests go really fast and typically measure how many frames we can render in a time window
-  Benchmarks_: These are benchmarks that measure specific items and report a summarized score

Startup
=======

`Startup
tests <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test>`__
launch Firefox and measure the time to the onload or paint events. We
run this in a series of cycles (default is 20) to generate a full set of
data. Tests that currently are startup tests are:

-  `ts_paint <#ts_paint>`_
-  tpaint_
-  `tresize <#tresize>`_
-  `sessionrestore <#sessionrestore>`_
-  `sessionrestore_no_auto_restore <#sessionrestore_no_auto_restore>`_
-  `sessionrestore_many_windows <#sessionrestore_many_windows>`_

Page load
=========

Many of the talos tests use the page loader to load a manifest of pages.
These are tests that load a specific page and measure the time it takes
to load the page, scroll the page, draw the page etc. In order to run a
page load test, you need a manifest of pages to run. The manifest is
simply a list of URLs of pages to load, separated by carriage returns,
e.g.:

.. code-block:: none

   https://www.mozilla.org
   https://www.mozilla.com

Example:
`svgx.manifest <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svgx/svgx.manifest>`__

Manifests may also specify that a test computes its own data by
prepending a ``%`` in front of the line:

.. code-block:: none

   % https://www.mozilla.org
   % https://www.mozilla.com

Example:
`v8.manifest <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/v8_7/v8.manifest>`__

The file you created should be referenced in your test config inside of
`test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l607>`__.
For example, open test.py, and look for the line referring to the test
you want to run:

.. code-block:: python

   tpmanifest = '${talos}/page_load_test/svgx/svgx.manifest'
   tpcycles = 1 # run a single cycle
   tppagecycles = 25 # load each page 25 times before moving onto the next page

Heavy
=====

All our testing is done with empty blank profiles, this is not ideal for
finding issues for end users. We recently undertook a task to create a
daily update to a profile so it is modern and relevant. It browses a
variety of web pages, and have history and cache to give us a more
realistic scenario.

The toolchain is documented on
`github <https://github.com/tarekziade/heavy-profile>`__ and was added
to Talos in `bug
1407398 <https://bugzilla.mozilla.org/show_bug.cgi?id=1407398>`__.

Currently we have issues with this on windows (takes too long to unpack
the files from the profile), so we have turned this off there. Our goal
is to run this on basic pageload and startup tests.

WebExtension
=============

WebExtensions are what Firefox has switched to and there are different
code paths and APIs used vs addons. Historically we don't test with
addons (other than our test addons) and are missing out on common
slowdowns. In 2017 we started running some startup and basic pageload
tests with a WebExtension in the profile (`bug
1398974 <https://bugzilla.mozilla.org/show_bug.cgi?id=1398974>`__). We
have updated the Extension to be more real world and will continue to do
that.

Real-world WebExtensions
========================

We've added a variation on our test suite that automatically downloads,
installs and enables 5 popular WebExtensions. This is used to measure
things like the impact of real-world WebExtensions on start-up time.

Currently, the following extensions are installed:

-  Adblock Plus (3.5.2)
-  Cisco Webex Extension (1.4.0)
-  Easy Screenshot (3.67)
-  NoScript (10.6.3)
-  Video DownloadHelper (7.3.6)

Note that these add-ons and versions are "pinned" by being held in a
compressed file that's hosted in an archive by our test infrastructure
and downloaded at test runtime. To update the add-ons in this set, one
must provide a new ZIP file to someone on the test automation team. See
`this comment in
Bugzilla <https://bugzilla.mozilla.org/show_bug.cgi?id=1575089#c3>`__.

Paint
=====

Paint tests are measuring the time to receive both the
`MozAfterPaint <https://developer.mozilla.org/en-US/docs/Web/Events/MozAfterPaint>`__
and OnLoad event instead of just the OnLoad event. Most tests now look
for this unless they are an ASAP test, or an internal benchmark

ASAP
====

We have a variety of tests which we now run in ASAP mode where we render
as fast as possible (disabling vsync and letting the rendering iterate
as fast as it can using \`requestAnimationFrame`). In fact we have
replaced some original tests with the 'x' versions to make them measure.
We do this with RequestAnimationFrame().

ASAP tests are:

-  `basic_compositor_video <#basic_compositor_video>`_
-  `displaylist_mutate <#displaylist_mutate>`_
-  `glterrain <#glterrain>`_
-  `rasterflood_svg <#rasterflood_svg>`_
-  `rasterflood_gradient <#rasterflood_gradient>`_
-  `tsvgx <#tsvgx>`_
-  `tscrollx <#tscrollx>`_
-  `tp5o_scroll <#tp5o_scroll>`_
-  `tabswitch <#tabswitch>`_
-  `tart <#tart>`_

Benchmarks
==========

Many tests have internal benchmarks which we report as accurately as
possible. These are the exceptions to the general rule of calculating
the suite score as a geometric mean of the subtest values (which are
median values of the raw data from the subtests).

Tests which are imported benchmarks are:

-  `ARES6 <#ares6>`_
-  `dromaeo <#dromaeo>`_
-  `JetStream <#jetstream>`_
-  `kraken <#kraken>`_
-  `motionmark <#motionmark>`_
-  `stylebench <#stylebench>`_

Row major vs. column major
==========================

To get more stable numbers, tests are run multiple times. There are two
ways that we do this: row major and column major. Row major means each
test is run multiple times and then we move to the next test (and run it
multiple times). Column major means that each test is run once one after
the other and then the whole sequence of tests is run again.

More background information about these approaches can be found in Joel
Maher's `Reducing the Noise in
Talos <https://elvis314.wordpress.com/2012/03/12/reducing-the-noise-in-talos/>`__
blog post.

Page sets
*********

We run our tests 100% offline, but serve pages via a webserver. Knowing
this we need to store and make available the offline pages we use for
testing.

tp5pages
========

Some tests make use of a set of 50 "real world" pages, known as the tp5n
set. These pages are not part of the talos repository, but without them
the tests which use them won't run.

-  To add these pages to your local setup, download the latest tp5n zip
   from `tooltool <https://mozilla-releng.net/tooltool/>`__, and extract
   it such that ``tp5n`` ends up as ``testing/talos/talos/tests/tp5n``.
   You can also obtain it by running a talos test locally to get the zip
   into ``testing/talos/talos/tests/``, i.e ``./mach talos-test --suite damp``
-  see also `tp5o <#tp5o>`_.

Talos Tests
***********
For the sample commands found below, note that the capitalization used is important. Without the exact spelling, the test won't be found when running locally.

.. dropdown:: ARES6
   :class-container: anchor-id-ARES6

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a ARES6

   * contact: :jandem and SpiderMonkey Team
   * source: `ARES-6 <https://searchfox.org/mozilla-central/source/third_party/webkit/PerformanceTests/ARES-6>`__
   * type: `Page load`_
   * data: 6 cycles of the entire benchmark
      * `geometric mean <https://searchfox.org/mozilla-central/source/testing/talos/talos/output.py#259>`__ self reported from the benchmark
   * **Lower is better**
   * unit: geometric mean / benchmark score
   * lower_is_better: True
   * tpmanifest: ${talos}/tests/ares6/ares6.manifest
   * tppagecycles: 1
   * **Test Task**:

   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-motionmark-profiling**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-motionmark-profiling**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-motionmark-profiling**
        - ❌
        - ❌
        - ❌
        - ❌



.. dropdown:: JetStream
   :class-container: anchor-id-JetStream

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a JetStream

   * contact: :jandem and SpiderMonkey Team
   * source: `jetstream.manifest <https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/jetstream/jetstream.manifest>`__ and jetstream.zip from tooltool
   * type: `Page load`_
   * measuring: JavaScript performance
   * reporting: geometric mean from the benchmark
   * data: internal benchmark
      * suite: `geometric
        mean <https://searchfox.org/mozilla-central/source/testing/talos/talos/output.py#259>`__
        provided by the benchmark
   * description:
      | This is the `JetStream <http://browserbench.org/JetStream/in-depth.html>`__
        javascript benchmark taken verbatim and slightly modified to fit into
        our pageloader extension and talos harness.
   * tpmanifest: ${talos}/tests/jetstream/jetstream.manifest
   * tppagecycles: 1
   * **Test Task**:

   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-motionmark-profiling**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-motionmark-profiling**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-motionmark-profiling**
        - ❌
        - ❌
        - ❌
        - ❌



.. dropdown:: a11yr
   :class-container: anchor-id-a11yr

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a a11yr

   * contact: :jamie and accessibility team
   * source: `a11y.manifest <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/a11y>`__
   * type: `Page load`_
   * measuring: ???
   * data: we load 2 pages 25 times each, collect 2 sets of 25 data points
   * summarization:
      * subtest: `ignore first`_ data point, then take the `median`_ of the remaining 24; `source:
        test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l627>`__
      * suite: `geometric mean`_ of the 2 subtest results.
   * reporting: test time in ms (lower is better)
   * description:
      | This test ensures basic a11y tables and permutations do not cause performance regressions.
   * **Example Data**

   .. code-block::

      0;dhtml.html;1584;1637;1643;1665;1741;1529;1647;1645;1692;1647;1542;1750;1654;1649;1541;1656;1674;1645;1645;1740;1558;1652;1654;1656;1654 |
      1;tablemutation.html;398;385;389;391;387;387;385;387;388;385;384;31746;386;387;384;387;389;387;387;387;388;391;386;387;388 |

   * a11y: True
   * alert_threshold: 5.0
   * preferences: {'dom.send_after_paint_to_content': False}
   * timeout: 600
   * tpchrome: False
   * tpcycles: 1
   * tpmanifest: ${talos}/tests/a11y/a11y.manifest
   * tpmozafterpaint: True
   * tppagecycles: 25
   * unit: ms
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: about_preferences_basic
   :class-container: anchor-id-about_preferences_basic

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a about_preferences_basic

   * contact: :jaws and :gijs
   * source: `about_preferences_basic.manifest <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/about-preferences/about_preferences_basic.manifest>`__
   * type: `Page load`_
   * measuring: first-non-blank-paint
   * data: We load 5 urls 1 time each, and repeat for 25 cycles; collecting 25 sets of 5 data points
   * summarization:
      * subtest: `ignore first`_ five data points, then take the `median`_ of the rest; `source: test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l627>`__
      * suite: `geometric mean`_ of the the subtest results.
   * reporting: test time in ms (lower is better)
   * description:
      | This test measures the performance of the Firefox about:preferences
        page. This test is a little different than other pageload tests in that
        we are loading one page (about:preferences) but also testing the loading
        of that same page's subcategories/panels (i.e. about:preferences#home).

      When simply changing the page's panel/category, that doesn't cause a new
      onload event as expected; therefore we had to introduce loading the
      'about:blank' page in between each page category; that forces the entire
      page to reload with the specified category panel activated.

      For that reason, when new panels/categories are added to the
      'about:preferences' page, it can be expected that a performance
      regression may be introduced, even if a subtest hasn't been added for
      that new page category yet.

      This test should only ever have 1 pagecycle consisting of the main
      about-preferences page and each category separated by an about:blank
      between. Then repeats are achieved by using 25 cycles (instead of
      pagecycles).
   * **Example Data**

   .. code-block::

      0;preferences;346;141;143;150;136;143;153;140;154;156;143;154;146;147;151;166;140;146;140;144;144;156;154;150;140
      2;preferences#search;164;142;133;141;141;141;142;140;131;146;131;140;131;131;139;142;140;144;146;143;143;142;142;137;143
      3;preferences#privacy;179;159;166;177;173;153;148;154;168;155;164;155;152;157;149;155;156;186;149;156;160;151;158;168;157
      4;preferences#sync;148;156;140;137;159;139;143;145;138;130;145;142;141;133;146;141;147;143;146;146;139;144;142;151;156
      5;preferences#home;141;111;130;131;138;128;133;122;138;138;131;139;139;132;133;141;143;139;138;135;136;128;134;140;135

   * fnbpaint: True
   * gecko_profile_interval: 1
   * lower_is_better: True
   * pine: False
   * tpcycles: 25
   * tpmanifest: ${talos}/tests/about-preferences/about_preferences_basic.manifest
   * tppagecycles: 1
   * unit: ms
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-chrome**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-chrome-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-chrome**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-chrome-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-chrome-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-chrome**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-chrome-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-chrome-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-chrome**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-chrome-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-chrome**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-chrome-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-chrome-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: basic_compositor_video
   :class-container: anchor-id-basic_compositor_video

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a basic_compositor_video

   * contact: :b0bh00d, :jeffm, and gfx
   * source: `video <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/video>`__
   * type: `Page load`_
   * data: 12 cycles of the entire benchmark, each subtest will have 12 data points (see below)
   * summarization:
      * subtest: `ignore first`_ data point, then take the `median`_ of the remaining 11; `source: test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l522>`__
      * suite: `geometric mean`_ of the 24 subtest results.
   * **Lower is better**
   * **Example Data**

   .. code-block::

      ;0;240p.120fps.mp4_scale_fullscreen_startup;11.112;11.071;11.196;11.157;11.195;11.240;11.196;11.155;11.237;11.074;11.154;11.282
      ;1;240p.120fps.mp4_scale_fullscreen_inclip;10.995;11.114;11.052;10.991;10.876;11.115;10.995;10.991;10.997;10.994;10.992;10.993
      ;2;240p.120fps.mp4_scale_1_startup;1.686;1.690;1.694;1.683;1.689;1.692;1.686;1.692;1.689;1.704;1.684;1.686
      ;3;240p.120fps.mp4_scale_1_inclip;1.666;1.666;1.666;1.668;1.667;1.669;1.667;1.668;1.668;1.667;1.667;1.669
      ;4;240p.120fps.mp4_scale_1.1_startup;1.677;1.672;1.673;1.677;1.673;1.677;1.672;1.677;1.677;1.671;1.676;1.679
      ;5;240p.120fps.mp4_scale_1.1_inclip;1.667;1.668;1.666;1.667;1.667;1.668;1.667;1.667;1.667;1.667;1.668;1.668
      ;6;240p.120fps.mp4_scale_2_startup;1.927;1.908;1.947;1.946;1.902;1.932;1.916;1.936;1.921;1.896;1.908;1.894
      ;7;240p.120fps.mp4_scale_2_inclip;1.911;1.901;1.896;1.917;1.897;1.921;1.907;1.944;1.904;1.912;1.936;1.913
      ;8;480p.60fps.webm_scale_fullscreen_startup;11.675;11.587;11.539;11.454;11.723;11.410;11.629;11.410;11.454;11.498;11.540;11.540
      ;9;480p.60fps.webm_scale_fullscreen_inclip;11.304;11.238;11.370;11.300;11.364;11.368;11.237;11.238;11.434;11.238;11.304;11.368
      ;10;480p.60fps.webm_scale_1_startup;3.386;3.360;3.391;3.376;3.387;3.402;3.371;3.371;3.356;3.383;3.376;3.356
      ;11;480p.60fps.webm_scale_1_inclip;3.334;3.334;3.329;3.334;3.334;3.334;3.334;3.334;3.334;3.335;3.334;3.334
      ;12;480p.60fps.webm_scale_1.1_startup;3.363;3.363;3.368;3.356;3.356;3.379;3.364;3.360;3.360;3.356;3.363;3.356
      ;13;480p.60fps.webm_scale_1.1_inclip;3.329;3.334;3.329;3.334;3.333;3.334;3.334;3.334;3.340;3.335;3.329;3.335
      ;14;480p.60fps.webm_scale_2_startup;4.960;4.880;4.847;4.959;4.802;4.863;4.824;4.926;4.847;4.785;4.870;4.855
      ;15;480p.60fps.webm_scale_2_inclip;4.903;4.786;4.892;4.903;4.822;4.832;4.798;4.857;4.808;4.856;4.926;4.741
      ;16;1080p.60fps.mp4_scale_fullscreen_startup;14.638;14.495;14.496;14.710;14.781;14.853;14.639;14.637;14.707;14.637;14.711;14.636
      ;17;1080p.60fps.mp4_scale_fullscreen_inclip;13.795;13.798;13.893;13.702;13.799;13.607;13.798;13.705;13.896;13.896;13.896;14.088
      ;18;1080p.60fps.mp4_scale_1_startup;6.995;6.851;6.930;6.820;6.915;6.805;6.898;6.866;6.852;6.850;6.803;6.851
      ;19;1080p.60fps.mp4_scale_1_inclip;6.560;6.625;6.713;6.601;6.645;6.496;6.624;6.538;6.539;6.497;6.580;6.558
      ;20;1080p.60fps.mp4_scale_1.1_startup;7.354;7.230;7.195;7.300;7.266;7.283;7.196;7.249;7.230;7.230;7.212;7.264
      ;21;1080p.60fps.mp4_scale_1.1_inclip;6.969;7.222;7.018;6.993;7.045;6.970;6.970;6.807;7.118;6.969;6.997;6.972
      ;22;1080p.60fps.mp4_scale_2_startup;6.963;6.947;6.914;6.929;6.979;7.010;7.010245327102808;6.914;6.961;7.028;7.012;6.914
      ;23;1080p.60fps.mp4_scale_2_inclip;6.757;6.694;6.672;6.669;6.737;6.831;6.716;6.715;6.832;6.670;6.672;6.759

   * gecko_profile_interval: 1
   * lower_is_better: True
   * preferences: {'full-screen-api.allow-trusted-requests-only': False, 'layers.acceleration.force-enabled': False, 'layers.acceleration.disabled': True, 'gfx.webrender.software': True, 'layout.frame_rate': 0, 'docshell.event_starvation_delay_hint': 1, 'full-screen-api.warning.timeout': 500, 'media.ruin-av-sync.enabled': True}
   * timeout: 10000
   * tpchrome: False
   * tpcycles: 1
   * tpmanifest: ${talos}/tests/video/video.manifest
   * tppagecycles: 12
   * unit: ms/frame
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-bcv**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-bcv-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-bcv**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-bcv-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-bcv-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-bcv**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-bcv-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-bcv-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-bcv**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-bcv-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-bcv**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-bcv-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-bcv-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: canvas2dvideo
   :class-container: anchor-id-canvas2dvideo

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a canvas2dvideo

   * contact: :aosmond and gfx
   * source: `canvas2dvideo <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/canvas2d/benchmarks/video>`__
   * type: `Page load`_
   * data: 5 cycles of the entire benchmark, each subtest will have 5 data points (see below)
   * summarization: Canvas2D video texture update with 1080p video. Measures mean tick time across 100 ticks.
      * subtest: `ignore first`_ data point, then take the `median`_ of the remaining 4; `source:
        test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l522>`__
      * suite: `geometric mean`_ of the 4 subtest results.
   * **Lower is better**
   * **Example Data**

   .. code-block::

      0;Mean tick time across 100 ticks: ;54.6916;49.0534;51.21645;51.239650000000005;52.44295

   * description:
      | This test playbacks a video file and ask Canvas2D to draw video frames as
        Canvas2D textures for 100 ticks. It collects the mean tick time across 100
        ticks to measure how much time it will spend for a video texture upload
        to be a Canvas2D texture (ctx.drawImage). We run it for 5 times and ignore
        the first found. Lower results are better.
   * gecko_profile_extra_threads: CanvasRenderer,CanvasWorker,MediaSupervisor
   * gecko_profile_interval: 2
   * linux_counters: None
   * mac_counters: None
   * timeout: 600
   * tpchrome: False
   * tpcycles: 1
   * tploadnocache: True
   * tpmanifest: ${talos}/tests/canvas2d/canvas2dvideo.manifest
   * tpmozafterpaint: False
   * tppagecycles: 5
   * unit: ms
   * win_counters: None
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-webgl**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-webgl-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-webgl**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-webgl-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-webgl-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-webgl**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-webgl-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-webgl-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-webgl**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-webgl-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-webgl**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-webgl-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-webgl-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: cpstartup
   :class-container: anchor-id-cpstartup

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a cpstartup

   * contact: :mconley, Firefox Desktop Front-end team, Gijs, fqueze, and dthayer
   * measuring: Time from opening a new tab (which creates a new content process) to having that new content process be ready to load URLs.
   * source: `cpstartup <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/cpstartup>`__
   * type: `Page load`_
   * bug: `bug 1336389 <https://bugzilla.mozilla.org/show_bug.cgi?id=1336389>`__
   * data: 20 cycles of the entire benchmark
   * **Lower is better**
   * **Example Data**

   .. code-block::

      0;content-process-startup;877;737;687;688;802;697;794;685;694;688;794;669;699;684;690;849;687;873;694;689

   * extensions: ['${talos}/pageloader', '${talos}/tests/cpstartup/extension']
   * preferences: {'browser.link.open_newwindow': 3, 'browser.link.open_newwindow.restriction': 2}
   * timeout: 600
   * tploadnocache: True
   * tpmanifest: ${talos}/tests/cpstartup/cpstartup.manifest
   * tppagecycles: 20
   * unit: ms
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: cross_origin_pageload
   :class-container: anchor-id-cross_origin_pageload

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a cross_origin_pageload

   * contact: :sefeng, :jesup, and perf eng team
   * measuring: The time it takes to load a page which has 20 cross origin iframes
   * source: `cross_origin_pageload <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/cross_origin_pageload>`__
   * type: `Page load`_
   * bug: `bug 1701989 <https://bugzilla.mozilla.org/show_bug.cgi?id=1701989>`__
   * data: 10 cycles of the entire benchmark
   * **Lower is better**
   * **Example Data**

   .. code-block::

      0;/index.html;194.42;154.12;141.38;145.88;136.92;147.64;152.54;138.02;145.5;143.62

   * extensions: ['${talos}/pageloader']
   * preferences: {'dom.ipc.processPrelaunch.fission.number': 30}
   * timeout: 100
   * tploadnocache: True
   * tpmanifest: ${talos}/tests/cross_origin_pageload/cross_origin_pageload.manifest
   * tppagecycles: 10
   * unit: ms
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-other-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-other-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: damp
   :class-container: anchor-id-damp

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a damp

   * contact: :ochameau and devtools team
   * source: `damp <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/devtools>`__
   * type: `Page load`_
   * measuring: Developer Tools toolbox performance. Split in test suites covering different DevTools areas (inspector, webconsole, other).
   * reporting: intervals in ms (lower is better)
   * see below for details
   * data: there are 36 reported subtests from DAMP which we load 25 times, resulting in 36 sets of 25 data points.
   * summarization:
      * subtest: `ignore first`_ data point, then take the `median`_ of the remaining 24 data points; `source: test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l356>`__
      * suite: No value for the suite, only individual subtests are relevant.
   * description:
      | To run this locally, you'll need to pull down the `tp5 page
        set <#page-sets>`__ and run it in a local web server. See the `tp5
        section <#tp5>`__.
   * **Example Data**

   .. code-block::

      0;simple.webconsole.open.DAMP;1198.86;354.38;314.44;337.32;344.73;339.05;345.55;358.37;314.89;353.73;324.02;339.45;304.63;335.50;316.69;341.05;353.45;353.73;342.28;344.63;357.62;375.18;326.08;363.10;357.30
      1;simple.webconsole.reload.DAMP;44.60;41.21;25.62;29.85;38.10;42.29;38.25;40.14;26.95;39.24;40.32;34.67;34.64;44.88;32.51;42.09;28.04;43.05;40.62;36.56;42.44;44.11;38.69;29.10;42.00
      2;simple.webconsole.close.DAMP;27.26;26.97;25.45;27.82;25.98;26.05;38.00;26.89;24.90;26.61;24.90;27.22;26.95;25.18;24.24;25.60;28.91;26.90;25.57;26.04;26.79;27.33;25.76;26.47;27.43
      3;simple.inspector.open.DAMP;507.80;442.03;424.93;444.62;412.94;451.18;441.39;435.83;441.27;460.69;440.93;413.13;418.73;443.41;413.93;447.34;434.69;459.24;453.60;412.58;445.41;466.34;441.89;417.59;428.82
      4;simple.inspector.reload.DAMP;169.45;165.11;163.93;181.12;167.86;164.67;170.34;173.12;165.24;180.59;176.72;187.42;170.14;190.35;176.59;155.00;151.66;174.40;169.46;163.85;190.93;217.00;186.25;181.31;161.13
      5;simple.inspector.close.DAMP;44.40;42.28;42.71;47.21;41.74;41.24;42.94;43.73;48.24;43.04;48.61;42.49;45.93;41.36;43.83;42.43;41.81;43.93;41.38;40.98;49.76;50.86;43.49;48.99;44.02
      6;simple.jsdebugger.open.DAMP;642.59;464.02;540.62;445.46;471.09;466.57;466.70;511.91;424.12;480.70;448.37;477.51;488.99;437.97;442.32;459.03;421.54;467.99;472.78;440.27;431.47;454.76;436.86;453.61;485.59
      7;simple.jsdebugger.reload.DAMP;51.65;55.46;225.46;53.32;58.78;53.23;54.39;51.59;55.46;48.03;50.70;46.34;230.94;53.71;54.23;53.01;61.03;51.23;51.45;293.01;56.93;51.44;59.85;63.35;57.44
      8;simple.jsdebugger.close.DAMP;29.12;30.76;40.34;32.09;31.26;32.30;33.95;31.89;29.68;31.39;32.09;30.36;44.63;32.33;30.16;32.43;30.89;30.85;31.99;49.86;30.94;44.63;32.54;29.79;33.15
      9;simple.styleeditor.open.DAMP;758.54;896.93;821.17;1026.24;887.14;867.39;927.86;962.80;740.40;919.39;741.01;925.21;807.39;1051.47;729.04;1095.78;755.03;888.70;900.52;810.30;1090.09;869.72;737.44;893.16;927.72
      10;simple.styleeditor.reload.DAMP;57.32;178.13;59.23;60.82;71.45;78.86;74.35;60.11;66.43;77.41;61.96;69.22;65.97;45.53;67.88;74.76;124.61;60.01;36.66;59.24;65.01;165.68;34.61;69.02;71.42
      11;simple.styleeditor.close.DAMP;28.28;56.50;36.18;30.00;36.32;34.85;35.33;36.24;25.45;36.72;26.53;36.90;28.88;30.94;26.56;31.34;47.79;30.90;30.52;27.95;30.75;56.28;26.76;30.25;37.42
      12;simple.performance.open.DAMP;444.28;357.87;331.17;335.16;585.71;402.99;504.58;466.95;272.98;427.54;345.60;441.53;319.99;327.91;312.94;349.79;399.51;465.60;418.42;295.14;362.06;363.11;445.71;634.96;500.83
      13;simple.performance.reload.DAMP;38.07;33.44;35.99;70.57;64.04;106.47;148.31;29.60;68.47;28.95;148.46;75.92;32.15;93.72;36.17;44.13;75.11;154.76;98.28;75.16;29.39;36.68;113.16;64.05;135.60
      14;simple.performance.close.DAMP;23.98;25.49;24.19;24.61;27.56;40.33;33.85;25.13;22.62;25.28;41.84;25.09;26.39;25.20;23.76;25.44;25.92;30.40;40.77;25.41;24.57;26.15;43.65;28.54;30.16
      15;simple.netmonitor.open.DAMP;438.85;350.64;318.04;329.12;341.91;352.33;344.05;334.15;514.57;327.95;471.50;334.55;344.94;364.39;727.56;374.48;339.45;344.31;345.61;329.78;325.74;334.74;350.36;342.85;344.64
      16;simple.netmonitor.reload.DAMP;59.68;47.50;69.37;61.18;76.89;83.22;68.11;81.24;56.15;68.20;32.41;81.22;81.62;44.30;39.52;29.60;86.07;71.18;76.32;79.93;79.63;82.15;83.58;87.04;82.97
      17;simple.netmonitor.close.DAMP;38.42;39.32;52.56;43.37;48.08;40.62;51.12;41.11;59.54;43.29;41.72;40.85;51.61;49.61;51.39;44.91;40.36;41.10;45.43;42.15;42.63;40.69;41.21;44.04;41.95
      18;complicated.webconsole.open.DAMP;589.97;505.93;480.71;530.93;460.60;479.63;485.33;489.08;605.28;457.12;463.95;493.28;680.05;478.72;504.47;578.69;488.66;485.34;504.94;460.67;548.38;474.98;470.33;471.34;464.58
      19;complicated.webconsole.reload.DAMP;2707.20;2700.17;2596.02;2728.09;2905.51;2716.65;2657.68;2707.74;2567.86;2726.36;2650.92;2839.14;2620.34;2718.36;2595.22;2686.28;2703.48;2609.75;2686.41;2577.93;2634.47;2745.56;2655.89;2540.09;2649.18
      20;complicated.webconsole.close.DAMP;623.56;570.80;636.63;502.49;565.83;537.93;525.46;565.78;532.90;562.66;525.42;490.88;611.99;486.45;528.60;505.35;480.55;500.75;532.75;480.91;488.69;548.77;535.31;477.92;519.84
      21;complicated.inspector.open.DAMP;1233.26;753.57;742.74;953.11;653.29;692.66;653.75;767.02;840.68;707.56;713.95;685.79;690.21;1020.47;685.67;721.69;1063.72;695.55;702.15;760.91;853.14;660.12;729.16;1044.86;724.34
      22;complicated.inspector.reload.DAMP;2384.90;2436.35;2356.11;2436.58;2372.96;2558.86;2543.76;2351.03;2411.95;2358.04;2413.27;2339.85;2373.11;2338.94;2418.88;2360.87;2349.09;2498.96;2577.73;2445.07;2354.88;2424.90;2696.10;2362.39;2493.29
      23;complicated.inspector.close.DAMP;541.96;509.38;476.91;456.48;545.48;634.04;603.10;488.09;599.20;480.45;617.93;420.39;514.92;439.99;727.41;469.04;458.59;539.74;611.55;725.03;473.36;484.60;481.46;458.93;554.76
      24;complicated.jsdebugger.open.DAMP;644.97;578.41;542.23;595.94;704.80;603.08;689.18;552.99;597.23;584.17;682.14;758.16;791.71;738.43;640.30;809.26;704.85;601.32;696.10;683.44;796.34;657.25;631.89;739.96;641.82
      25;complicated.jsdebugger.reload.DAMP;2676.82;2650.84;2687.78;2401.23;3421.32;2450.91;2464.13;2286.40;2399.40;2415.97;2481.48;2827.69;2652.03;2554.63;2631.36;2443.83;2564.73;2466.22;2597.57;2552.73;2539.42;2481.21;2319.50;2539.00;2576.43
      26;complicated.jsdebugger.close.DAMP;795.68;616.48;598.88;536.77;435.02;635.61;558.67;841.64;613.48;886.60;581.38;580.96;571.40;605.34;671.00;882.02;619.01;579.63;643.05;656.78;699.64;928.99;549.76;560.96;676.32
      27;complicated.styleeditor.open.DAMP;2327.30;2494.19;2190.29;2205.60;2198.11;2509.01;2189.79;2532.05;2178.03;2207.75;2224.96;2665.84;2294.40;2645.44;2661.41;2364.60;2395.36;2582.72;2872.03;2679.29;2561.24;2330.11;2580.16;2510.36;2860.83
      28;complicated.styleeditor.reload.DAMP;2218.46;2335.18;2284.20;2345.05;2286.98;2453.47;2506.97;2661.19;2529.51;2289.78;2564.15;2608.24;2270.77;2362.17;2287.31;2300.19;2331.56;2300.86;2239.27;2231.33;2476.14;2286.28;2583.24;2540.29;2259.67
      29;complicated.styleeditor.close.DAMP;302.67;343.10;313.15;305.60;317.92;328.44;350.70;370.12;339.77;308.72;312.71;320.63;305.52;316.69;324.92;306.60;313.65;312.17;326.26;321.45;334.56;307.38;312.95;350.94;339.36
      30;complicated.performance.open.DAMP;477.99;537.96;564.85;515.05;502.03;515.58;492.80;689.06;448.76;588.91;509.76;485.39;548.17;479.14;638.67;535.86;541.61;611.52;554.72;665.37;694.04;470.60;746.16;547.85;700.02
      31;complicated.performance.reload.DAMP;2258.31;2345.74;2509.24;2579.71;2367.94;2365.94;2260.86;2324.23;2579.01;2412.63;2540.38;2069.80;2534.91;2443.48;2193.01;2442.99;2422.42;2475.35;2076.48;2092.95;2444.53;2353.86;2154.28;2354.61;2104.82
      32;complicated.performance.close.DAMP;334.44;516.66;432.49;341.29;309.30;365.20;332.16;311.42;370.81;301.81;381.13;299.39;317.60;314.10;372.44;314.76;306.24;349.85;382.08;352.53;309.40;298.44;314.10;315.44;405.22
      33;complicated.netmonitor.open.DAMP;469.70;597.87;468.36;823.09;696.39;477.19;487.78;495.92;587.89;471.48;555.02;507.45;883.33;522.15;756.86;713.64;593.82;715.13;477.15;717.85;586.79;556.97;631.43;629.55;581.16
      34;complicated.netmonitor.reload.DAMP;4033.55;3577.36;3655.61;3721.24;3874.29;3977.92;3778.62;3825.60;3984.65;3707.91;3985.24;3565.21;3702.40;3956.70;3627.14;3916.11;3929.11;3934.06;3590.60;3628.39;3618.84;3579.52;3953.04;3781.01;3682.69
      35;complicated.netmonitor.close.DAMP;1042.98;920.21;928.19;940.38;950.25;1043.61;1078.16;1077.38;1132.91;1095.05;1176.31;1256.83;1143.14;1234.61;1248.97;1242.29;1378.63;1312.74;1371.48;1373.15;1544.55;1422.51;1549.48;1616.55;1506.58

   * cycles: 5
   * extensions: ['${talos}/pageloader', '${talos}/tests/devtools/addon']
   * gecko_profile_extra_threads: DOM Worker
   * gecko_profile_interval: 10
   * linux_counters: None
   * mac_counters: None
   * perfherder_framework: devtools
   * preferences: {'devtools.memory.enabled': True}
   * subtest_alerts: True
   * tpcycles: 1
   * tploadnocache: True
   * tpmanifest: ${talos}/tests/devtools/damp.manifest
   * tpmozafterpaint: False
   * tppagecycles: 5
   * unit: ms
   * win_counters: None
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-damp-inspector**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-damp-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-damp-webconsole**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-damp-inspector**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-damp-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-damp-webconsole**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-damp-inspector**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-damp-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-damp-webconsole**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-damp-inspector**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-damp-other**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-damp-webconsole**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-damp-inspector**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-damp-other**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-damp-webconsole**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: displaylist_mutate
   :class-container: anchor-id-displaylist_mutate

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a displaylist_mutate

   * contact: :miko and gfx
   * source: `displaylist_mutate.html <https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/layout/benchmarks/displaylist_mutate.html>`__
   * type: `Page load`_
   * data: we load the displaylist_mutate.html page five times, measuring pageload each time, generating 5 data points.
   * summarization:
      * subtest: `ignore first`_ data point, then take the `median`_ of the remaining 4; `source: test.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986>`__
   * description:
      | This measures the amount of time it takes to render a page after
        changing its display list. The page has a large number of display list
        items (10,000), and mutates one every frame. The goal of the test is to
        make displaylist construction a bottleneck, rather than painting or
        other factors, and thus improvements or regressions to displaylist
        construction will be visible. The test runs in ASAP mode to maximize
        framerate, and the result is how quickly the test was able to mutate and
        re-paint 600 items, one during each frame.
   * gecko_profile_interval: 2
   * linux_counters: None
   * mac_counters: None
   * preferences: {'layout.frame_rate': 0, 'docshell.event_starvation_delay_hint': 1, 'dom.send_after_paint_to_content': False}
   * timeout: 600
   * tpchrome: False
   * tpcycles: 1
   * tploadnocache: True
   * tpmanifest: ${talos}/tests/layout/displaylist_mutate.manifest
   * tpmozafterpaint: False
   * tppagecycles: 5
   * unit: ms
   * win_counters: None
   * **Test Task**:

   .. list-table:: **test-linux1804-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-g4**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-g4-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-linux1804-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-g4**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-g4-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-g4-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-macosx1470-64-shippable/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-g4**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-g4-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-g4-swr**
        - ✅
        - ✅
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-g4**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-g4-swr**
        - ❌
        - ❌
        - ❌
        - ❌


   .. list-table:: **test-windows11-64-shippable-qr/opt**
      :widths: 30 15 15 15 15
      :header-rows: 1

      * - **Test Name**
        - mozilla-central
        - autoland
        - mozilla-release
        - mozilla-beta
      * - **talos-g4**
        - ✅
        - ✅
        - ❌
        - ❌
      * - **talos-g4-profiling**
        - ❌
        - ❌
        - ❌
        - ❌
      * - **talos-g4-swr**
        - ✅
        - ✅
        - ❌
        - ❌



.. dropdown:: dromaeo
   :class-container: anchor-id-dromaeo

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a dromaeo

   * description:
      | Dromaeo suite of tests for JavaScript performance testing. See the
        `Dromaeo wiki <https://wiki.mozilla.org/Dromaeo>`__ for more
        information.

      This suite is divided into several sub-suites.

      Each sub-suite is divided into tests, and each test is divided into
      sub-tests. Each sub-test takes some (in theory) fixed piece of work and
      measures how many times that piece of work can be performed in one
      second. The score for a test is then the geometric mean of the
      runs/second numbers for its sub-tests. The score for a sub-suite is the
      geometric mean of the scores for its tests.

.. dropdown:: dromaeo_css
   :class-container: anchor-id-dromaeo_css

   * Command to Run Locally

   .. code-block::

      ./mach talos-test -a dromaeo_css

   * contact: :emilio, and css/layout team
   * source: `css.manifest <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/dromaeo>`__
   * type: `Page load`_
   * reporting: speed in test runs per second (higher is better)
   * data: Dromaeo has 6 subtests which run internal benchmarks, each benchmark reports about 180 raw data points each
   * summarization:
      * subtest:
        Dromaeo is a custom benchmark which has a lot of micro tests
        inside each subtest, because of this we use a custom `dromaeo
        filter <https://wiki.mozilla.org/TestEngineering/Performance/Talos/Data#dromaeo>`__
        to summarize the subtest. Each micro test produces 5 data points and
        for each 5 data points we take the mean, leaving 36 data points to
        represent the subtest (assuming 180 points). These 36 micro test
        means, are then run through a geometric_mean to produce a single
        number for the dromaeo subtest. `source:
        filter.py <https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l527>`__
      * suite: `geometric mean`_ of the 6 subtest results.
   * description:
      | Each page in the manifest is part of the dromaeo css benchmark. Each
        page measures the performance of searching the DOM for nodes matching
        various CSS selectors, using different libraries for the selector
        implementation (jQuery, Dojo, Mootools, ExtJS, Prototype, and Yahoo UI).
   * **Example Data**

   .. code-block::

      0;dojo.html;2209.83;2269.68;2275.47;2278.83;2279.81;4224.43;4344.96;4346.74;4428.69;4459.82;4392.80;4396.38;4412.54;4414.34;4415.62;3909.94;4027.96;4069.08;4099.63;4099.94;4017.70;4018.96;4054.25;4068.74;4081.31;3825.10;3984.20;4053.23;4074.59;4106.63;3893.88;3971.80;4031.15;4046.68;4048.31;3978.24;4010.16;4046.66;4051.68;4056.37;4189.50;4287.98;4390.98;4449.89;4450.20;4536.23;4557.82;4588.40;4662.58;4664.42;4675.51;4693.13;4743.72;4758.12;4764.67;4138.00;4251.60;4346.22;4410.12;4417.23;4677.53;4702.48;4714.62;4802.59;4805.33;4445.07;4539.91;4598.93;4605.45;4618.79;4434.40;4543.09;4618.56;4683.98;4689.51;4485.26;4496.75;4511.23;4600.86;4602.08;4567.52;4608.33;4615.56;4619.31;4622.79;3469.44;3544.11;3605.80;3647.74;3658.56;3101.88;3126.41;3147.73;3159.92;3170.73;3672.28;3686.40;3730.74;3748.89;3753.59;4411.71;4521.50;4633.98;4702.72;4708.76;3626.62;3646.71;3713.07;3713.13;3718.91;3846.17;3846.25;3913.61;3914.63;3916.22;3982.88;4112.98;4132.26;4194.92;4201.54;4472.64;4575.22;4644.74;4645.42;4665.51;4120.13;4142.88;4171.29;4208.43;4211.03;4405.36;4517.89;4537.50;4637.77;4644.28;4548.25;4581.20;4614.54;4658.42;4671.09;4452.78;4460.09;4494.06;4521.30;4522.37;4252.81;4350.72;4364.93;4441.40;4492.78;4251.34;4346.70;4355.00;4358.89;4365.72;4494.64;4511.03;4582.11;4591.79;4592.36;4207.54;4308.94;4309.14;4406.71;4474.46
      1;ext.html;479.65;486.21;489.61;492.94;495.81;24454.14;33580.33;34089.15;34182.83;34186.15;34690.83;35050.30;35051.30;35071.65;35099.82;5758.22;5872.32;6389.62;6525.38;6555.57;8303.96;8532.96;8540.91;8544.00;8571.49;8360.79;8408.79;8432.96;8447.28;8447.83;5817.71;5932.67;8371.83;8389.20;8643.44;7983.80;8073.27;8073.84;8076.48;8078.15;24596.00;32518.84;32787.34;32830.51;32861.00;2220.87;2853.84;3333.53;3345.17;3445.47;24785.75;24971.75;25044.25;25707.61;25799.00;2464.69;2481.89;2527.57;2534.65;2534.92;217793.00;219347.90;219495.00;220059.00;297168.00;40556.19;53062.47;54275.73;54276.00;54440.37;50636.75;50833.49;50983.49;51028.49;51032.74;10746.36;10972.45;11450.37;11692.18;11797.76;8402.58;8415.79;8418.66;8426.75;8428.16;16768.75;16896.00;16925.24;16945.58;17018.15;7047.68;7263.13;7313.16;7337.38;7383.22;713.88;723.72;751.47;861.35;931.00;25454.36;25644.90;25801.87;25992.61;25995.00;819.89;851.23;852.00;886.59;909.89;14325.79;15064.92;15240.39;15431.23;15510.61;452382.00;458194.00;458707.00;459226.00;459601.00;45699.54;46244.54;46270.54;46271.54;46319.00;1073.94;1080.66;1083.35;1085.84;1087.74;26622.33;27807.58;27856.72;28040.58;28217.86;37229.81;37683.81;37710.81;37746.62;37749.81;220386.00;222903.00;240808.00;247394.00;247578.00;25567.00;25568.49;25610.74;25650.74;25710.23;26466.21;28718.71;36175.64;36529.27;36556.00;26676.00;30757.69;31965.84;34521.83;34622.65;32791.18;32884.00;33194.83;33720.16;34192.66;32150.36;32520.02;32851.18;32947.18;33128.01;29472.85;30214.09;30708.54;30999.23;32879.51;23822.88;23978.28;24358.88;24470.88;24515.51
--> --------------------

--> maximum size reached

--> --------------------

[ Dauer der Verarbeitung: 0.43 Sekunden  (vorverarbeitet)  ]