1 2-- Copyright 2024 The Android Open Source Project 3-- 4-- Licensed under the Apache License, Version 2.0 (the "License"); 5-- you may not use this file except in compliance with the License. 6-- You may obtain a copy of the License at 7-- 8-- https://www.apache.org/licenses/LICENSE-2.0 9-- 10-- Unless required by applicable law or agreed to in writing, software 11-- distributed under the License is distributed on an "AS IS" BASIS, 12-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13-- See the License for the specific language governing permissions and 14-- limitations under the License. 15 16INCLUDE PERFETTO MODULE wattson.curves.estimates; 17INCLUDE PERFETTO MODULE viz.summary.threads_w_processes; 18 19-- This metric is defined to be for entire trace duration 20DROP VIEW IF EXISTS _wattson_period_window; 21CREATE PERFETTO VIEW _wattson_period_window AS 22SELECT 23 trace_start() as ts, 24 trace_dur() as dur, 25 1 as period_id; 26 27SELECT RUN_METRIC( 28 'android/wattson_tasks_attribution.sql', 29 'window_table', 30 '_wattson_period_window' 31); 32 33DROP VIEW IF EXISTS wattson_trace_threads_output; 34CREATE PERFETTO VIEW wattson_trace_threads_output AS 35SELECT AndroidWattsonTasksAttributionMetric( 36 'metric_version', 4, 37 'power_model_version', 1, 38 'period_info', ( 39 SELECT RepeatedField( 40 AndroidWattsonTaskPeriodInfo( 41 'period_id', period_id, 42 'task_info', proto 43 ) 44 ) 45 FROM _wattson_per_task 46 ) 47); 48