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

Remove constant_function for AutoEnzyme #74

Merged
merged 1 commit into from
Aug 2, 2024

Conversation

gdalle
Copy link
Collaborator

@gdalle gdalle commented Aug 2, 2024

Warning

This PR and the associated release are breaking wrt 1.6.1, but we will yank 1.6.1 and 1.6.0 right after

Checklist

  • Appropriate tests were added
  • Any code changes were done in a way that does not break public API
  • All documentation related to code changes were updated
  • The new code follows the
    contributor guidelines, in particular the SciML Style Guide and
    COLPRAC.
  • Any new documentation only uses public API

Additional context

Following a long discussion with @ChrisRackauckas and @wsmoses, we decided to remove the constant_function setting for now, and reinsert it later with different defaults (once Enzyme implements a few changes on their side). This PR does the removal and bumps ADTypes to v1.6.2, after which we will need to yank v1.6.0 and v1.6.1.

@gdalle
Copy link
Collaborator Author

gdalle commented Aug 2, 2024

Let's wait for a review from Billy and Chris before merging (I added Billy as "read" contributor to the repo so that I can request reviews in the future, if that's ok)

@ChrisRackauckas
Copy link
Member

Let's just go straight to the nothing default then?

@gdalle
Copy link
Collaborator Author

gdalle commented Aug 2, 2024

I wanted to wait until the implementation exists on the Enzyme and DI side before reintroducing this kwarg. Our mistake last time was to introduce it before it actually did anything, and as a result we got the design wrong.

@gdalle
Copy link
Collaborator Author

gdalle commented Aug 2, 2024

But if @wsmoses is confident that constant_function=nothing is the right third option I can modify this PR to just change the default instead of removing the kwarg

@wsmoses
Copy link
Collaborator

wsmoses commented Aug 2, 2024

I would probably do the yank now then design when ready.

Being even more forward looking this should likely actually be a Union{Nothing, Enzyme.Annotation}, since the function could be nothing, constant, duplicated, or even active

@wsmoses
Copy link
Collaborator

wsmoses commented Aug 2, 2024

This constant function is not the appropriate name

@ChrisRackauckas
Copy link
Member

function_activity

@wsmoses
Copy link
Collaborator

wsmoses commented Aug 2, 2024 via email

@gdalle
Copy link
Collaborator Author

gdalle commented Aug 2, 2024

Okay then removing everything first is the right move. In this spirit, do you approve this PR?

Copy link
Collaborator

@wsmoses wsmoses left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spiritually and actually approved

@ChrisRackauckas ChrisRackauckas merged commit 1b5cad0 into main Aug 2, 2024
4 checks passed
@ChrisRackauckas ChrisRackauckas deleted the gd/revert_constant_function branch August 2, 2024 15:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants