Skip to content

tp: Wattson: improve static power attribution using bitmasks#5383

Open
wusamuel6 wants to merge 1 commit intomainfrom
dev/wusamuel/add_multiple_1d_static_support
Open

tp: Wattson: improve static power attribution using bitmasks#5383
wusamuel6 wants to merge 1 commit intomainfrom
dev/wusamuel/add_multiple_1d_static_support

Conversation

@wusamuel6
Copy link
Copy Markdown
Contributor

Introduces bitmasks to track CPU cluster activity more accurately, allowing for generic attribution of shared static power.

Static power (leakage) for a cluster without inter-cluster dependency was only supported for a single cluster before. Update to using bitmasks to support multiple cluster static power calculations when the cluster do not have inter-cluster power dependency.

This is achieved by:

  1. Adding new SQL macros for 8-bit bitwise operations in wattson/utils.sql.
  2. Creating a policy-based bitmask table in wattson/device_infos.sql to map CPUs to their respective clusters.
  3. Updating the pivot operation to calculate cluster activity masks.
  4. Refining the final power estimate calculations to use these masks.

Test: tools/diff_test_trace_processor.py out/linux_clang_release/trace_processor_shell --name-filter '.wattson.'
Bug: 495918677

Introduces bitmasks to track CPU cluster activity more accurately,
allowing for generic attribution of shared static power.

Static power (leakage) for a cluster without inter-cluster dependency
was only supported for a single cluster before. Update to using bitmasks
to support multiple cluster static power calculations when the cluster
do not have inter-cluster power dependency.

This is achieved by:
1. Adding new SQL macros for 8-bit bitwise operations in wattson/utils.sql.
2. Creating a policy-based bitmask table in wattson/device_infos.sql to
   map CPUs to their respective clusters.
3. Updating the pivot operation to calculate cluster activity masks.
4. Refining the final power estimate calculations to use these masks.

Test: tools/diff_test_trace_processor.py out/linux_clang_release/trace_processor_shell --name-filter '.*wattson.*'
Bug: 495918677
Signed-off-by: Samuel Wu <wusamuel@google.com>
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 1, 2026

🎨 Perfetto UI Builds

@wusamuel6 wusamuel6 marked this pull request as ready for review April 2, 2026 00:18
@wusamuel6 wusamuel6 requested a review from a team as a code owner April 2, 2026 00:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant