-
Notifications
You must be signed in to change notification settings - Fork 35
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
Typed IR passes #67
Comments
Centralizing discussion of this topic here, pasting from the OP of #65:
Pasting from my reply:
|
We should plan a meeting to brainstorm on this at JuliaCon, a lot of interesting directions it could go. |
Closing this as a non-goal for Cassette |
For anyone watching, the current thinking is that the Julia compiler will get more tools for injecting custom inference / optimisation passes, with JuliaLang/julia#33955 being the starting point for that. Mjolnir also provides some prototyping in this direction, which will allow for things like custom optimisation passes in the short term. |
Related to #65, there are various reasons to want to implement Cassette-like passes over typed IR, and more generally to have control over Julia's optimisation stack in a given context. Semantic code transformations should always be possible on untyped IR, but we might want to, for example, implement custom optimisation passes – like exploiting model parallelism in ML.
This is a fairly vague discussion issue; it will take some back-and-forth with the core Julia compiler folks to work out a good approach.
The text was updated successfully, but these errors were encountered: