1 # Copyright (c) 2013 The Chromium OS Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style license that can be 3 # found in the LICENSE file. 4 5 AUTHOR = "Chrome OS Team" 6 NAME = "AFDO_record" 7 PURPOSE = "Exercise Chrome, record profiling data using AFDO." 8 9 TIME = "LONG" 10 TEST_CATEGORY = "General" 11 TEST_CLASS = "suite" 12 TEST_TYPE = "Server" 13 14 DOC = """ 15 Exercise Chrome, record profiling data using AFDO. 16 17 The profile is collected using branch and program counter sampling with 18 the 'perf' tool instead of creating an instrumented binary as it is done 19 with traditional PGO. 20 21 The image should have been built with default optimization turned on for chrome. 22 We do this to make branch prediction etc. data driven in future optimizations 23 of chrome builds, so realism and source control are important. 24 25 Mostly we are just wrapping the labelled tests here. 26 27 @param build: The name of the image to test. 28 Ex: x86-mario-release/R17-1412.33.0-a1-b29 29 @param board: The board to test on. Ex: x86-mario 30 @param pool: The pool of machines to utilize for scheduling. If pool=None 31 board is used. 32 @param check_hosts: require appropriate live hosts to exist in the lab. 33 """ 34 35 import common 36 from autotest_lib.server.cros import provision 37 from autotest_lib.server.cros.dynamic_suite import dynamic_suite 38 39 40 # Values specified in this bug template will override default values when 41 # filing bugs on tests that are a part of this suite. If left unspecified 42 # the bug filer will fallback to it's defaults. 43 _BUG_TEMPLATE = { 44 'labels': ['Build-Toolchain'], 45 'owner': 'llozano (a] chromium.org', 46 'status': None, 47 'summary': None, 48 'title': None, 49 'cc': ['laszio (a] chromium.org', 50 'chromeos-toolchain-sheriff (a] grotations.appspotmail.com'] 51 } 52 53 args_dict['job'] = job 54 args_dict['file_bugs'] = True 55 args_dict['name'] = 'AFDO_record' 56 args_dict['add_experimental'] = True 57 args_dict['version_prefix'] = provision.CROS_VERSION_PREFIX 58 args_dict['bug_template'] = _BUG_TEMPLATE 59 60 dynamic_suite.reimage_and_run(**args_dict) 61