Confirmed users
372
edits
Line 1,208: | Line 1,208: | ||
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them. | * None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them. | ||
=== bloom_basic | === bloom_basic === | ||
* contact: :bholley, :rwood, :jmaher | * contact: :bholley, :rwood, :jmaher | ||
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest perf-reftest] | * source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest perf-reftest] | ||
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader] | * type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Page_Load_Tests PageLoader] | ||
* reporting: intervals in ms (lower is better) | * reporting: intervals in ms (lower is better) | ||
* data: each test loads 25 times | * data: each test loads 25 times | ||
Line 1,218: | Line 1,218: | ||
** suite: identical to subtest | ** suite: identical to subtest | ||
The bloom_basic test (perf-reftest suite) is a unique talos suite that loads two different test pages: a 'base' page (bloom_basic) and a 'reference' page (bloom_basic_ref), and then compares each of the page load times against eachother to determine the variance. | |||
Talos runs each of the two pages as if they are stand-alone tests, and then calculates and reports the variance; the test output 'replicates' reported from bloom_basic are actually the comparisons between the 'base' and 'reference' pages for each page load cycle. | |||
If you wish to see the individual 'base' and 'reference' page results instead of just the reported difference, the 'base_replicates' and 'ref_replicates' can be found in the PERFHERDER_DATA log file output, and in the 'local.json' talos output file when running talos locally. In production, both of the page replicates are also archived in the perfherder-data.json file. The perfherder-data.json file is archived after each run in production, and can be found on the Treeherder Job Details tab when the perf-reftest job symbol is selected. | |||
Bloom_basic ensures that we correctly fast-reject ancestor selectors that clearly don't | |||
match any ancestor elements. If the bloom filter isn't working correctly, | |||
the 'test' page will take orders of magnitude longer. The 'ref' page will | |||
take somewhat longer, but not nearly as much. | |||
{| class="mw-collapsible mw-collapsed wikitable" | |||
! Example data | |||
|- | |||
| <pre> | |||
"replicates": [1.185, 1.69, 1.22, 0.36, 11.26, 3.835, 3.315, 1.355, 3.185, 2.485, 2.2, 1.01, 0.9, 1.22, 1.9, | |||
0.285, 1.52, 0.31, 2.58, 0.725, 2.31, 2.67, 3.295, 1.57, 0.3], "value": 1.7349999999999999, "unit": "ms", | |||
"base_replicates": [166.94000000000003, 165.16, 165.64000000000001, 165.04000000000002, 167.355, 165.175, | |||
165.325, 165.11, 164.175, 164.78, 165.555, 165.885, 166.83499999999998, 165.76500000000001, 164.375, 166.825, | |||
167.13, 166.425, 169.22500000000002, 164.955, 165.335, 164.45000000000002, 164.85500000000002, 165.005, 166.035]}], | |||
"ref_replicates": [165.755, 166.85000000000002, 166.85999999999999, 165.4, 178.615, 169.01, 168.64, 166.465, | |||
167.36, 167.265, 167.75500000000002, 166.895, 167.735, 166.985, 166.275, 166.54000000000002, 165.61, 166.115, | |||
166.64499999999998, 165.68, 167.64499999999998, 167.12, 168.15, 166.575, 166.335], | |||
</pre> | |||
|} | |||
==== Possible regression causes ==== | |||
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them. | |||
=== bloom_basic_singleton === | |||
* contact: :bholley, :rwood, :jmaher | |||
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest-singletons perf-reftest-singletons] | |||
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Page_Load_Tests PageLoader] | |||
* reporting: intervals in ms (lower is better) | |||
* data: each test loads 25 times | |||
* summarization: | |||
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] 5 data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l734 source: test.py] | |||
** suite: identical to subtest | |||
The bloom_basic_singleton test (perf-reftest-singletons suite) runs the 'base' page (bloom_basic) test individually, and reports the values for that single test page alone, NOT the comparison of two different pages. | |||
Bloom_basic ensures that we correctly fast-reject ancestor selectors that clearly don't | |||
match any ancestor elements. If the bloom filter isn't working correctly, | match any ancestor elements. If the bloom filter isn't working correctly, | ||
the 'test' page will take orders of magnitude longer. The 'ref' page will | the 'test' page will take orders of magnitude longer. The 'ref' page will | ||
Line 1,227: | Line 1,270: | ||
|- | |- | ||
| <pre> | | <pre> | ||
bloombasic.html;88.34000000000003;88.66499999999999;94.815;92.60500000000002;95.30000000000001; | |||
98.80000000000001;91.975;87.73500000000001;86.925;86.965;93.00500000000001;98.93;87.45000000000002; | |||
87.14500000000001;92.78500000000001;86.96499999999999;98.32000000000001;97.485;90.67000000000002; | |||
86.72500000000001;95.665;100.67;101.095;94.32;91.87 | |||
</pre> | </pre> | ||
|} | |} | ||
Line 1,235: | Line 1,279: | ||
==== Possible regression causes ==== | ==== Possible regression causes ==== | ||
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them. | * None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them. | ||
=== tp6 === | |||
* contact: :rwood, :jmaher, :bsmedberg | |||
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/quantum_pageload tp6] | |||
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Page_Load_Tests PageLoader] | |||
* reporting: intervals in ms (lower is better) | |||
* data: we load each of the tp6 pages 25 times | |||
* summarization: | |||
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first five] data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20; [http://searchfox.org/mozilla-central/rev/8a61c71153a79cda2e1ae7d477564347c607cc5f/testing/talos/talos/test.py#246 source: test.py] | |||
** suite: identical to subtest; each tp6_* test is reported individually (they're NOT aggregated) | |||
* NOTE: Currently only supported on Windows | |||
The talos tp6 (also known as 'quantum-pageload') test suite loads various pages and reports their load times. Each test page/URL is reported individually. The result values (ms) is the 'time to first non-blank paint'. | |||
Instead of loading the page sets from a local file, a tool called [http://docs.mitmproxy.org/en/latest/introduction.html mitmproxy] is used to playback page archives via an https proxy. When the tp6 suite is run via ./mach talos-test, mozharness automatically downloads and installs the mitmproxy tool and pageset archives. | |||
The mitmproxy tool is started, the proxy setup in Firefox, and the mitmproxy https security certificate is loaded into Firefox, all automatically. The pagesets are made available for playback via the proxy, at which point each of the tp6 test pages are ready for load and measurement. | |||
The tp6 suite currently consists of these individual pageload tests: | |||
{| cellspacing="1" cellpadding="1" border="1" | |||
|- | |||
| Talos test name | |||
| Description | |||
|- | |||
| tp6_amazon | |||
| Measures page load of an amazon search result for the keyword "laptop" | |||
|- | |||
| tp6_facebook | |||
| Measures page load of a facebook timeline (post-login) | |||
|- | |||
| tp6_google | |||
| Measures page load of a google search result for the keywords "barack obama" | |||
|- | |||
| tp6_youtube | |||
| Measures page load of the youtube home page | |||
|} | |||
{| class="mw-collapsible mw-collapsed wikitable" | |||
! Example data for tp6_youtube | |||
|- | |||
| <pre> | |||
https://www.youtube.co/;409;441;354;337;326;375;353;650;354;712;667;336;791;497;342;355;611;334; | |||
692;320;714;434;582;610;333 | |||
</pre> | |||
|} | |||
==== Possible regression causes ==== | |||
Some examples of things that cause regressions in this test are: | |||
* Please update this when regressions are found |