Bug 1473079 - Add gecko profiling support to raptor (part 2: limit page cycles); r=jmaher
authorRob Wood <rwood@mozilla.com>
Mon, 29 Oct 2018 13:33:13 +0000
changeset 443368 64f653c604bba354acb8a36b06f531a9d8c8472d
parent 443367 74af7ef017522cb94081989f3e92868f7ccd154b
child 443369 70378a21cbf570a359b3ce4f134c45256241c439
push id109362
push userrgurzau@mozilla.com
push dateMon, 29 Oct 2018 22:12:05 +0000
treeherdermozilla-inbound@1c7d0042fc4a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjmaher
bugs1473079
milestone65.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1473079 - Add gecko profiling support to raptor (part 2: limit page cycles); r=jmaher Depends on D6286 Differential Revision: https://phabricator.services.mozilla.com/D6309
testing/raptor/raptor/manifest.py
--- a/testing/raptor/raptor/manifest.py
+++ b/testing/raptor/raptor/manifest.py
@@ -154,16 +154,24 @@ def get_raptor_test_list(args, oskey):
     if len(tests_to_run) == 0:
         _ini = args.test + ".ini"
         for next_test in available_tests:
             head, tail = os.path.split(next_test['manifest'])
             if tail == _ini:
                 # subtest comes from matching test ini file name, so add it
                 tests_to_run.append(next_test)
 
+    # if geckoProfile is enabled, limit pagecycles to 2
+    if args.gecko_profile is True:
+        for next_test in tests_to_run:
+            if next_test['page_cycles'] > 2:
+                LOG.info("gecko profiling enabled, limiting pagecycles "
+                         "to 2 for test %s" % next_test['name'])
+                next_test['page_cycles'] = 2
+
     # write out .json test setting files for the control server to read and send to web ext
     if len(tests_to_run) != 0:
         for test in tests_to_run:
             if validate_test_ini(test):
                 write_test_settings_json(test, oskey)
             else:
                 # test doesn't have valid settings, remove it from available list
                 LOG.info("test %s is not valid due to missing settings" % test['name'])