Index: tools/perf/benchmarks/blob_storage.py |
diff --git a/tools/perf/benchmarks/blob_storage.py b/tools/perf/benchmarks/blob_storage.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..155a9f4676b8941d5a91da1c666e19ea81de271e |
--- /dev/null |
+++ b/tools/perf/benchmarks/blob_storage.py |
@@ -0,0 +1,42 @@ |
+# Copyright 2015 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. |
+# Copyright 2015 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 core import perf_benchmark |
+ |
+from telemetry.core.platform import tracing_category_filter |
+from telemetry.web_perf import timeline_based_measurement |
+ |
+import page_sets |
+ |
+ |
+BLOB_CATEGORY = 'Blob' |
+TIMELINE_REQUIRED_CATEGORY = 'blink.console' |
+ |
+ |
+class BlobStorage(perf_benchmark.PerfBenchmark): |
+ """Timeline based measurement benchmark for Blob Storage.""" |
+ |
+ page_set = page_sets.BlobWorkshopPageSet |
+ |
+ def CreateTimelineBasedMeasurementOptions(self): |
+ cat_filter = tracing_category_filter.CreateMinimalOverheadFilter() |
+ cat_filter.AddIncludedCategory(BLOB_CATEGORY) |
+ cat_filter.AddIncludedCategory(TIMELINE_REQUIRED_CATEGORY) |
+ |
+ return timeline_based_measurement.Options( |
+ overhead_level=cat_filter) |
+ |
+ @classmethod |
+ def Name(cls): |
+ return 'blob_storage.blob_storage' |
+ |
+ @classmethod |
+ def ValueCanBeAddedPredicate(cls, value, is_first_result): |
+ if ('blob-writes' not in value.name and |
+ 'blob-reads' not in value.name): |
+ return False |
+ return value.values != None |