Skip to content

Conversation

@Erik-Lundell
Copy link
Collaborator

@Erik-Lundell Erik-Lundell commented Jan 17, 2025

When working with passes, you might have access to a modified graph_module rather than an exported_program. visualize_graph allows visualization of this graph_module by combining the modified graph_module with an exported_program. Note that the graph_module can't be set directly, a new exported_program needs to be constructed.

Additionally, we disable the operator validation for the newly constructed ExportedProgram. This is ok since it is only used for visualization.

@Erik-Lundell Erik-Lundell added module: devtools Issues related to developer tools and code under devtools/ partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm topic: not user facing labels Jan 17, 2025
@pytorch-bot
Copy link

pytorch-bot bot commented Jan 17, 2025

🔗 Helpful Links

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

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

✅ No Failures

As of commit 727bf64 with merge base 57ef834 (image):
💚 Looks good so far! There are no failures yet. 💚

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

@facebook-github-bot facebook-github-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 Jan 17, 2025
@zingo zingo requested a review from digantdesai January 17, 2025 10:17
@zingo
Copy link
Collaborator

zingo commented Jan 17, 2025

Hi @digantdesai this PR touch non Arm folders, OK?

@Erik-Lundell Erik-Lundell force-pushed the visualize_graph branch 2 times, most recently from 8891df2 to 26f119e Compare January 20, 2025 08:38
If a node is created without specifying an overload,
A OpOverloadPacket is created, rather than an OpOverload.
This works in a GraphModule, but the OpOverloadPacket is not a valid
operator type in the _EXIREdgeDialectVerifier, which means
that Edge ExportedPrograms can't contain a GraphModule with
such ops.

In short, specifying using the default overload seems
to be the more correct way of creating a custom
operator.

Signed-off-by: Erik Lundell <[email protected]>
Change-Id: I3a1733c0ae88826d88b1e820eaacff765df7fbd2
When working with passes, you might have access to
a modified graph_module rather than an exported_program.
visualize_graph allows visualization of this graph_module
by combining  the modified graph_module with an exported_program.
Note that the graph_module can't be set directly, a new
exported_program needs to be constructed.

Additionally, we disable the operator validation for the
newly constructed ExportedProgram. This is ok since
it is only used for visualization.

Signed-off-by: Erik Lundell <[email protected]>
Change-Id: I4fad809bf094a1ec70e25534cc0858f9d8d3d225
@oscarandersson8218 oscarandersson8218 merged commit 0c855de into pytorch:main Jan 29, 2025
45 checks passed
@Erik-Lundell Erik-Lundell deleted the visualize_graph branch July 31, 2025 07:51
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. module: devtools Issues related to developer tools and code under devtools/ partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants