Skip to content

Conversation

jmahbs
Copy link
Contributor

@jmahbs jmahbs commented Sep 18, 2025

Exposes PMU trace output from an FVP. This lays part of the foundation to enable us to use this output to as a data overlay in Model Explorer visualisations.

The end goal here is to be able to visualise some profiling data in Model Explorer using our Tosa Flatbuffer adapter. To enable this we need to implement a few changes:

  1. Expose PMU trace output from a FVP. This gives us performance data from an FVP run. (This PR)
  2. Expose Vela's debug database. This gives us generic information on operators in a our model, and can be combined with the trace output to provide more detailed profiling analysis
  3. Write a script to combine the trace output and the debug database so we can visualise it in Model Explorer in Executorch.

Here's a snippet of the PMU trace output:

{
            "name": "axi_enabled_cycles",
            "ph": "X",
            "ts": "1029",
            "pid": "DMA",
            "tid": "axi_enabled_cycles",
            "dur": "1014"
        }

cc @digantdesai @freddan80 @per @zingo @oscarandersson8218

Change-Id: I2c7d202e81ac81f98561904ad14bfcf2b0071bb6
@jmahbs jmahbs requested a review from digantdesai as a code owner September 18, 2025 09:25
Copy link

pytorch-bot bot commented Sep 18, 2025

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/14401

Note: Links to docs will display an error until the docs builds have been completed.

❌ 1 New Failure

As of commit cbb9cea with merge base d43cde5 (image):

NEW FAILURE - The following job has failed:

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Sep 18, 2025
@pytorch-bot pytorch-bot bot added the release notes: none Do not include this in the release notes label Sep 18, 2025
@jmahbs
Copy link
Contributor Author

jmahbs commented Sep 18, 2025

@pytorchbot label "release notes: arm"

@pytorch-bot pytorch-bot bot added the release notes: arm Changes to the ARM backend delegate label Sep 18, 2025
@jmahbs
Copy link
Contributor Author

jmahbs commented Sep 18, 2025

@pytorchbot label ciflow/trunk

Copy link

pytorch-bot bot commented Sep 18, 2025

To add these label(s) (ciflow/trunk) to the PR, please first approve the workflows that are awaiting approval (scroll to the bottom of this page).

This helps ensure we don't trigger CI on this PR until it is actually authorized to do so. Please ping one of the reviewers if you do not have access to approve and run workflows.

Copy link

pytorch-bot bot commented Sep 18, 2025

Didn't find following labels among repository labels: partner:,arm

Copy link

pytorch-bot bot commented Sep 18, 2025

Didn't find following labels among repository labels: partner:arm

@zingo zingo added ciflow/trunk and removed release notes: none Do not include this in the release notes labels Sep 18, 2025
Copy link

pytorch-bot bot commented Sep 18, 2025

To add the ciflow label ciflow/trunk please first approve the workflows that are awaiting approval (scroll to the bottom of this page).

This helps ensure we don't trigger CI on this PR until it is actually authorized to do so. Please ping one of the reviewers if you do not have access to approve and run workflows.

@zingo zingo added partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm ciflow/trunk labels Sep 18, 2025
Copy link

pytorch-bot bot commented Sep 18, 2025

To add the ciflow label ciflow/trunk please first approve the workflows that are awaiting approval (scroll to the bottom of this page).

This helps ensure we don't trigger CI on this PR until it is actually authorized to do so. Please ping one of the reviewers if you do not have access to approve and run workflows.

@digantdesai
Copy link
Contributor

Hi @jmahbs thanks for the PR. Can you add more details (perhaps a snippet of output) on what's in this trace file and how this will be consumed downstream? Thanks.

@zingo zingo merged commit c00612f into pytorch:main Sep 18, 2025
130 of 136 checks passed
@digantdesai
Copy link
Contributor

FYI https://docs.pytorch.org/executorch/main/etdump.html

This is going to be fun! :)

StrycekSimon pushed a commit to nxp-upstream/executorch that referenced this pull request Sep 23, 2025
Exposes PMU trace output from an FVP. This lays part of the foundation
to enable us to use this output to as a data overlay in Model Explorer
visualisations.

The end goal here is to be able to visualise some profiling data in
Model Explorer using our Tosa Flatbuffer adapter. To enable this we need
to implement a few changes:

1. Expose PMU trace output from a FVP. This gives us performance data
from an FVP run. (This PR)
2. Expose Vela's debug database. This gives us generic information on
operators in a our model, and can be combined with the trace output to
provide more detailed profiling analysis
3. Write a script to combine the trace output and the debug database so
we can visualise it in Model Explorer in Executorch.


Here's a snippet of the PMU trace output: 
```
{
            "name": "axi_enabled_cycles",
            "ph": "X",
            "ts": "1029",
            "pid": "DMA",
            "tid": "axi_enabled_cycles",
            "dur": "1014"
        }
```
cc @digantdesai @freddan80 @per @zingo @oscarandersson8218
zingo added a commit that referenced this pull request Sep 29, 2025
Follow on from #14401
Enables dumping of Vela's debug database to a specified directory . This
gives us generic information on operators in our model, and can be
combined with the trace output to provide more detailed profiling
analysis.

Co-authored-by: Zingo Andersen <zingo.andersen@arm.com>
@jmahbs jmahbs deleted the expose-fvp-pmu branch September 30, 2025 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm release notes: arm Changes to the ARM backend delegate
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants