-
Notifications
You must be signed in to change notification settings - Fork 8
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
Timeline for integrating into Rust upstream? #67
Comments
Hi, the plan is to directly merge this work into nightly rustc, it also got an accepted Major Change Proposal in the past, even though rustc dev still need to vote on the final PR. |
No worries for asking and thanks for your interest, most of the discussions happen on the rust-lang zulip, either in the autodiff stream, or in a help stream linked in the autodiff discussion. |
Hi @ZuseZ4, thanks for that, that's really helpful! |
I, too, am looking forward to Enzyme being merged into Rust. Thanks for all your excellent work so far @ZuseZ4! |
@ZuseZ4 Is there a checklist of issues blocking a merge with upstream Rust? Any issues you could use help with? |
Hi @OwenTrokeBillard, thanks for getting back to this. I was on vacation around end of year and previously got stuck for a while on some re-design, but recently managed to re-implement a core part of my autodiff macro in a way that is more liked by other rustc devs. I now just need to port the remaining code of rust-enzyme to the latest branch, since rustc is somewhat fast moving, so there is a little bit more refactoring required. I think it's the easiest if I just finish this on my own. One place where I would appreciate help though is the website and documentation, hosted at https://enzyme.mit.edu/rust. As an alternative, it would be great to have rust-enzyme in our compiler explorer: https://enzyme.mit.edu/explorer |
It looks like explorer will just need a build script similar to this and then a flag to activate it. https://github.com/EnzymeAD/enzyme-explorer/blob/main/builder/build-enzyme.sh |
Documentation and compiler explorer support are important. I'll gladly help where I can. However, those don't appear to block upstreaming. Do they? It would be great to have a checklist of issues preventing an upstream specifically. Based on other PRs in Rust, it looks like the process can take many months. Better to get the ball rolling early. |
For example, I imagine Windows support is required (#54). I will give that another try soon. |
Windows support should only be fixing the path issues, I'll try to unblock you here after lunch. Other than that it's the new macro built-in design instead of our old approach which was requested by other rustc devs, since we would otherwise break cross-compilation. Some rustc devs already gave their ok from their point of expertise, the final approval will be from t-lang though and they have quite limited time. Someone will bring up the autodiff macro at their next meeting once we are ready, but we should have some good docs by then so they can easily grasp what we would introduce on the language level (that is our autodiff macro frontend). The middle and backend are less relevant here, since we can change those without affecting users. |
Is enzyme now part of nightly? I saw the issue was closed but can not get it to work. |
Are you referring to this one rust-lang/compiler-team#611 @fknfilewalker? |
I am not really a rust user, but I thought about switching when I read that EnzymeAD should be in upstream. I was just confused weather it is or not. So rust is not directly one of my priorities, sorry. |
Hi, where can i find information about the status/installation/usage of this integration? Thanks in advance |
The installation instructions are in our readme: https://github.com/EnzymeAD/rust |
Thank you so much!! |
@ all. The Rust language Team met this morning and decided to approve this as an experiment within rustc! So we can now actually upstream this. I will start the refactoring in the next days. There is still the unmerged llvm PR which we want to have in, but in the best case I can hopefully push my upstream PR at the end of this month. |
Hi @ZuseZ4, does this mean that it can be installed via nightly or is this still in progress? |
The first 13 files were upstreamed last night: rust-lang#129176 |
Hi,
I'm wondering if there's any timeline for this project to be integrated into the upstream Rust compiler? As I understand it, the Rust compiler needs to be modified somewhat to emit the information this project needs. Are these changes too specific to ever get merged? It would be great if this could be installed as a package simply using cargo, instead of having to compile the whole compiler.
Sorry if there is information about this somewhere, I couldn't find it!
The text was updated successfully, but these errors were encountered: