summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/perf/page_sets/2012Q3.json3
-rw-r--r--tools/telemetry/telemetry/page/actions/js_collect_garbage.py14
2 files changed, 16 insertions, 1 deletions
diff --git a/tools/perf/page_sets/2012Q3.json b/tools/perf/page_sets/2012Q3.json
index 5d100fe..151a1d6 100644
--- a/tools/perf/page_sets/2012Q3.json
+++ b/tools/perf/page_sets/2012Q3.json
@@ -3,7 +3,8 @@
"archive_data_file": "../data/2012Q3.json",
"credentials_path": "../data/credentials.json",
"smoothness": { "action": "scroll" },
- "stress_memory": { "action": "reload", "wait_seconds": 1, "repeat": 3 },
+ "reload_and_gc": [{"action": "reload", "wait_seconds": 1}, {"action": "js_collect_garbage"}],
+ "stress_memory": { "action": "reload_and_gc", "repeat": 3 },
"pages": [
{ "url": "http://www.facebook.com/barackobama" },
{ "url": "https://www.google.com/search?q=barack%20obama" },
diff --git a/tools/telemetry/telemetry/page/actions/js_collect_garbage.py b/tools/telemetry/telemetry/page/actions/js_collect_garbage.py
new file mode 100644
index 0000000..0acfc2c
--- /dev/null
+++ b/tools/telemetry/telemetry/page/actions/js_collect_garbage.py
@@ -0,0 +1,14 @@
+# Copyright (c) 2013 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+from telemetry.page.actions import page_action
+
+class JsCollectGarbageAction(page_action.PageAction):
+ def __init__(self, attributes=None):
+ super(JsCollectGarbageAction, self).__init__(attributes)
+
+ def CustomizeBrowserOptions(self, options):
+ options.AppendExtraBrowserArg('--js-flags=--expose-gc')
+
+ def RunAction(self, page, tab, previous_action):
+ tab.EvaluateJavaScript('window.gc(); window.gc();')