Skip to content

Commit c812dd6

Browse files
stdlib: Add Wattson TPU power estimation (#5022)
Introduces a multi-dimensional TPU power model for Wattson, integrating frequency, cluster, and parallel request concurrency. Key changes: - Created a non-linear TPU power curve LUT with support for workload-based scaling. - Implemented TPU frequency and cluster extraction from 'DVFS' tracks. - Clamped request lookups to 8 for now due to measurement limitations. Bug: 454625451 Test: Wattson power estimation vs ground truth --------- Signed-off-by: Runping Lai <runpinglai@google.com>
1 parent 4a5b83f commit c812dd6

File tree

11 files changed

+709
-4
lines changed

11 files changed

+709
-4
lines changed

Android.bp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16663,6 +16663,7 @@ genrule {
1666316663
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tg5_cpu_2d_1.sql",
1666416664
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tg5_cpu_2d_2.sql",
1666516665
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tg5_l3.sql",
16666+
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tpu.sql",
1666616667
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/utils.sql",
1666716668
"src/trace_processor/perfetto_sql/stdlib/wattson/device_infos.sql",
1666816669
"src/trace_processor/perfetto_sql/stdlib/wattson/estimates.sql",
@@ -16671,6 +16672,8 @@ genrule {
1667116672
"src/trace_processor/perfetto_sql/stdlib/wattson/tasks/attribution.sql",
1667216673
"src/trace_processor/perfetto_sql/stdlib/wattson/tasks/idle_transitions_attribution.sql",
1667316674
"src/trace_processor/perfetto_sql/stdlib/wattson/tasks/task_slices.sql",
16675+
"src/trace_processor/perfetto_sql/stdlib/wattson/tpu/estimates.sql",
16676+
"src/trace_processor/perfetto_sql/stdlib/wattson/tpu/freq_idle.sql",
1667416677
"src/trace_processor/perfetto_sql/stdlib/wattson/ui/continuous_estimates.sql",
1667516678
"src/trace_processor/perfetto_sql/stdlib/wattson/utils.sql",
1667616679
"src/trace_processor/perfetto_sql/stdlib/wattson/windows.sql",

BUILD

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3969,6 +3969,7 @@ perfetto_filegroup(
39693969
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tg5_cpu_2d_1.sql",
39703970
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tg5_cpu_2d_2.sql",
39713971
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tg5_l3.sql",
3972+
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/tpu.sql",
39723973
"src/trace_processor/perfetto_sql/stdlib/wattson/curves/utils.sql",
39733974
"src/trace_processor/perfetto_sql/stdlib/wattson/device_infos.sql",
39743975
"src/trace_processor/perfetto_sql/stdlib/wattson/estimates.sql",
@@ -3977,6 +3978,8 @@ perfetto_filegroup(
39773978
"src/trace_processor/perfetto_sql/stdlib/wattson/tasks/attribution.sql",
39783979
"src/trace_processor/perfetto_sql/stdlib/wattson/tasks/idle_transitions_attribution.sql",
39793980
"src/trace_processor/perfetto_sql/stdlib/wattson/tasks/task_slices.sql",
3981+
"src/trace_processor/perfetto_sql/stdlib/wattson/tpu/estimates.sql",
3982+
"src/trace_processor/perfetto_sql/stdlib/wattson/tpu/freq_idle.sql",
39803983
"src/trace_processor/perfetto_sql/stdlib/wattson/ui/continuous_estimates.sql",
39813984
"src/trace_processor/perfetto_sql/stdlib/wattson/utils.sql",
39823985
"src/trace_processor/perfetto_sql/stdlib/wattson/windows.sql",

src/trace_processor/perfetto_sql/stdlib/wattson/BUILD.gn

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ perfetto_sql_source_set("wattson") {
3434
"curves/tg5_cpu_2d_1.sql",
3535
"curves/tg5_cpu_2d_2.sql",
3636
"curves/tg5_l3.sql",
37+
"curves/tpu.sql",
3738
"curves/utils.sql",
3839
"device_infos.sql",
3940
"estimates.sql",
@@ -42,6 +43,8 @@ perfetto_sql_source_set("wattson") {
4243
"tasks/attribution.sql",
4344
"tasks/idle_transitions_attribution.sql",
4445
"tasks/task_slices.sql",
46+
"tpu/estimates.sql",
47+
"tpu/freq_idle.sql",
4548
"ui/continuous_estimates.sql",
4649
"utils.sql",
4750
"windows.sql",

0 commit comments

Comments
 (0)