Index: tools/resource_prefetch_predictor/generate_database.py |
diff --git a/tools/resource_prefetch_predictor/generate_database.py b/tools/resource_prefetch_predictor/generate_database.py |
deleted file mode 100755 |
index 60dfd5fa629b8a7b3903307366d04e2f2db4d79b..0000000000000000000000000000000000000000 |
--- a/tools/resource_prefetch_predictor/generate_database.py |
+++ /dev/null |
@@ -1,94 +0,0 @@ |
-#!/usr/bin/python |
-# |
-# Copyright 2016 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. |
- |
-"""Loads a set of web pages several times on a device, and extracts the |
-predictor database. |
-""" |
- |
-import argparse |
-import logging |
-import os |
-import sys |
-import time |
- |
-_SRC_PATH = os.path.abspath(os.path.join( |
- os.path.dirname(__file__), os.pardir, os.pardir)) |
-sys.path.append(os.path.join(_SRC_PATH, 'third_party', 'catapult', 'devil')) |
- |
-from devil.android import device_utils |
- |
-sys.path.append(os.path.join(_SRC_PATH, 'build', 'android')) |
-import devil_chromium |
- |
-sys.path.append(os.path.join(_SRC_PATH, 'tools', 'android', 'loading')) |
-from options import OPTIONS |
-import page_track |
- |
-import prefetch_predictor_common |
- |
- |
-_PAGE_LOAD_TIMEOUT = 20 |
- |
- |
-def _CreateArgumentParser(): |
- """Creates and returns the argument parser.""" |
- parser = argparse.ArgumentParser( |
- ('Loads a set of web pages several times on a device, and extracts the ' |
- 'predictor database.'), parents=[OPTIONS.GetParentParser()]) |
- parser.add_argument('--device', help='Device ID') |
- parser.add_argument('--urls_filename', help='File containing a list of URLs ' |
- '(one per line). URLs can be repeated.') |
- parser.add_argument('--output_filename', |
- help='File to store the database in.') |
- parser.add_argument('--url_repeat', |
- help=('Number of times each URL in the input ' |
- 'file is loaded.'), |
- default=3) |
- return parser |
- |
- |
-def _Go(chrome_controller, urls_filename, output_filename, repeats): |
- urls = [] |
- with open(urls_filename) as f: |
- urls = [line.strip() for line in f.readlines()] |
- |
- with chrome_controller.Open() as connection: |
- for repeat in range(repeats): |
- logging.info('Repeat #%d', repeat) |
- for url in urls: |
- logging.info('\tLoading %s', url) |
- page_track.PageTrack(connection) # Registers the listeners. |
- connection.MonitorUrl(url, timeout_seconds=_PAGE_LOAD_TIMEOUT, |
- stop_delay_multiplier=1.5) |
- time.sleep(2) # Reduces flakiness. |
- |
- device = chrome_controller.GetDevice() |
- device.ForceStop(OPTIONS.ChromePackage().package) |
- device.PullFile(prefetch_predictor_common.DatabaseDevicePath(), |
- output_filename) |
- |
- |
-def main(): |
- devil_chromium.Initialize() |
- logging.basicConfig(level=logging.INFO) |
- |
- parser = _CreateArgumentParser() |
- args = parser.parse_args() |
- OPTIONS.SetParsedArgs(args) |
- |
- device = prefetch_predictor_common.FindDevice(args.device) |
- if device is None: |
- logging.error('Could not find device: %s.', args.device) |
- sys.exit(1) |
- |
- chrome_controller = prefetch_predictor_common.Setup( |
- device, ['--speculative-resource-prefetching=learning']) |
- _Go(chrome_controller, args.urls_filename, args.output_filename, |
- int(args.url_repeat)) |
- |
- |
-if __name__ == '__main__': |
- main() |