Skip to content
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

[SR-15584] Darwin + Differentiation cross-import overlay for tgmath derivatives #57887

Open
rxwei opened this issue Dec 10, 2021 · 15 comments
Open
Labels
AutoDiff compiler The Swift compiler in itself task

Comments

@rxwei
Copy link
Member

rxwei commented Dec 10, 2021

Previous ID SR-15584
Radar rdar://69052246
Original Reporter @rxwei
Type Task
Additional Detail from JIRA
Votes 0
Component/s Compiler
Labels Task, AutoDiff
Assignee None
Priority Medium

md5: cbb53edab0fe87011fff1e6b36ddb707

Issue Description:

Set up a Darwin/Glibc + Differentiation cross-import overlay for tgmath derivatives.

@rxwei
Copy link
Member Author

rxwei commented Jan 22, 2022

@philipturner Thanks for offering to take it on! If you are just starting to make contributions to Swift compiler, a best practice might be to give us a heads-up (and ideally a rough proposed solution) before assigning the ticket to yourself, because most autodiff issues are not trivial.

@rxwei
Copy link
Member Author

rxwei commented Jan 22, 2022

I'll go ahead and remove the assignment since the PR is incorrect, but do let us know if you want to take this on again. The cross-import overlays are really great to have, since they will remove `_Differentiation`'s dependency on Glibc/Darwin/ucrt. You can read the pitch here to see whether you want to spend some time to tackle it.

@rxwei
Copy link
Member Author

rxwei commented Jan 22, 2022

I don't know of any other issues assigned to you, but I believe you can self-unassign, too, by setting assignee to "Unassigned".

@rxwei
Copy link
Member Author

rxwei commented Jan 25, 2022

Sorry, I do not. Looks like https://gist.github.com/beccadax/8f35216340e829efa5e9c1fc090fda09 is the updated proposal.

@rxwei
Copy link
Member Author

rxwei commented Jan 25, 2022

Again, I'll limit my discussion here to the Swift Open Source Project (i.e. autodiff itself, not its adopter libraries you mentioned). This cross-import overlay task is not something I or anyone can "call off", as it is a release requirement.

For smaller starter tasks, I'd recommend reaching out to @BradLarson.

@BradLarson
Copy link
Collaborator

@philipturner Off the top of my head, one issue that could be a good starting point, if you're looking for general autodiff issues to work on, is SR-14056. Extending the conditional conformance to `Differentiable` to more collection types within the standard library should be fairly approachable and would have practical benefits for users of differentiable Swift. I believe this is a follow-on from the old TF-1199, which I think was just asking for the addition of a conditional `Differentiable` conformance to Dictionary.

For example, we have local implementations of a Differentiable conformance for Dictionary and a couple other collection types in our model code, and that consists of a bunch of repeated boilerplate code to support those cases. Supporting more collection types would allow us and other users to delete the code for our versions of this.

@BradLarson
Copy link
Collaborator

If a cross-import overlay is the right design decision to plan for the future, I don't have a huge problem with enabling a temporary build flag while the feature is being prototyped. We've done that intermittently for other language features. I'm guessing tensorflow/swift-apis would also be impacted.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AutoDiff compiler The Swift compiler in itself task
Projects
None yet
Development

No branches or pull requests

2 participants