-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] Edge linetype customization #119
Comments
Hi @Hakan-Eyilmez, we probably could but I'm wondering how useful this is. arg%0 is leading to the block body, both parts of the block body are dependent on it, I feel like the above more or less represents that visually well .... in your ideal state how would these edges look? |
Hi @pkgoogle, apologies for the confusion. You're correct that arg%0 leads to the block body, and both parts of the block body depend on it. This aspect is accurately represented in the model. However, the time dependency is not depicted here. The if_else block should occur after bufferization.clone but before func.return, which is not shown in the current model. The ideal representation would resemble the one above, but with additional edges indicating the time dependencies. For instance, a dashed line could connect bufferization.clone to if_else, and further dashed lines could link the two regions to func.return. If this is still unclear, I can consult my supervisor to provide a better example to illustrate the concept. |
Hi @Hakan-Eyilmez, Ok that makes more sense. Sequential dependency for graphs which represent programs which have to execute sequentially makes sense... the only concern in my head is we don't want to enforce a dependency that's not really there so that the representation can show parallelizability (for general cases or arbitrary ML programs). In both your cases though, it seems like we are missing that dependency. @jinjingforever, can you take a look on how we can implement something like this? Thanks. Hakan feel free to add any more information if you think I didn't understand it correctly. |
Hi @pkgoogle, It’s been a while. I wanted to check in on the status of this feature. I noticed you added custom edge overlays, and I wasn’t sure if that was related. To clarify my initial request: I was hoping for the ability to style existing edges to visually represent different types of dependencies between nodes. For example, solid edges for regular dependencies, dotted edges for sequential dependencies, and so on. Apologies if my original explanation wasn’t clear. |
Hi @Ha-Eyz, Thanks for checking in. You are correct that the edge overlay is a different feature. To be able to style edges as you mentioned is still in our todo list unfortunately.. We will update this issue when we make progress. Thank you! |
Someone already asked for a feature modifying the colour of edges ([Feature Request] Edge styling #66 ). In addition I wanted to ask, if it is possible to add a feature, allowing the user to use different types of edges? It would be quite useful representing different types of dependencies. For example in MLIR:
This is the code given to my adapter:
And this is the generated graph:
As you can see, both the bufferization.clone and the if_else do not share a dependency, but the flow of the code is still important, which could be represented with a different type of edges.
The text was updated successfully, but these errors were encountered: