Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1026)

Unified Diff: tools/android/loading/sandwich_swr.py

Issue 2009883002: sandwich: Make metrics extraction more customizable. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: s/ADDITIONAL_COLUMN_NAMES/additional_column_names/g Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/android/loading/sandwich_runner.py ('k') | tools/android/loading/sandwich_task_builder.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/android/loading/sandwich_swr.py
diff --git a/tools/android/loading/sandwich_swr.py b/tools/android/loading/sandwich_swr.py
index ee4831a08192d9583e3e572e22934511e08c8fcf..46910c4078cd3f09bc8b361f35ad6a72ceaf87b7 100644
--- a/tools/android/loading/sandwich_swr.py
+++ b/tools/android/loading/sandwich_swr.py
@@ -101,6 +101,8 @@ class StaleWhileRevalidateBenchmarkBuilder(task_manager.Builder):
depends on: <transformer_list_name>/{swr,worstcase}-run/
depends on: some tasks saved by PopulateCommonPipelines()
"""
+ additional_column_names = ['url', 'repeat_id']
+
task_prefix = os.path.join(transformer_list_name, '')
if enable_swr:
task_prefix += 'swr'
@@ -124,15 +126,27 @@ class StaleWhileRevalidateBenchmarkBuilder(task_manager.Builder):
@self.RegisterTask(task_prefix + '-metrics.csv', [RunBenchmark])
def ExtractMetrics():
- trace_metrics_list = \
- sandwich_metrics.ExtractMetricsFromRunnerOutputDirectory(
- None, RunBenchmark.path)
- trace_metrics_list.sort(key=lambda e: e['repeat_id'])
+ run_metrics_list = []
+ for repeat_id, repeat_dir in sandwich_runner.WalkRepeatedRuns(
+ RunBenchmark.path):
+ trace_path = os.path.join(repeat_dir, sandwich_runner.TRACE_FILENAME)
+ logging.info('processing trace: %s', trace_path)
+ trace = loading_trace.LoadingTrace.FromJsonFile(trace_path)
+ run_metrics = {
+ 'url': trace.url,
+ 'repeat_id': repeat_id,
+ }
+ run_metrics.update(
+ sandwich_metrics.ExtractCommonMetricsFromRepeatDirectory(
+ repeat_dir, trace))
+ run_metrics_list.append(run_metrics)
+
+ run_metrics_list.sort(key=lambda e: e['repeat_id'])
with open(ExtractMetrics.path, 'w') as csv_file:
- writer = csv.DictWriter(csv_file,
- fieldnames=sandwich_metrics.CSV_FIELD_NAMES)
+ writer = csv.DictWriter(csv_file, fieldnames=(additional_column_names +
+ sandwich_metrics.COMMON_CSV_COLUMN_NAMES))
writer.writeheader()
- for trace_metrics in trace_metrics_list:
+ for trace_metrics in run_metrics_list:
writer.writerow(trace_metrics)
self._common_builder.default_final_tasks.append(ExtractMetrics)
« no previous file with comments | « tools/android/loading/sandwich_runner.py ('k') | tools/android/loading/sandwich_task_builder.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698