forked from rust-lang/rust
-
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
Old master #59
Draft
ZuseZ4
wants to merge
1,494
commits into
master
Choose a base branch
from
old-master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Old master #59
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Add addr replacement handling of memtransfer * Update test
* Add MLIR build infra * With tests * Update readme * Add initial infra * Continue pushing towards forward mode infra * Most primitive functioning test * Fix cmake * Handle control flow (fwd) * Add scf.for * Update enzyme-mlir.yml * Introduce a MLIR OpInterface and redistribute code Note that the interface is not yet implement by the ops. This will be done separately. * Fix CI * Fix CI * Fix format * Add python3-dev * Reduce link * Fix build and test Real includes must precede .inc files. A function was not returning anything leading to a segfault. * Factor gradient implementations out into external interface models MLIR-code must use interfaces instead of giant switches. External models allow for interfaces to be attached to foreign dialect ops without modifying them. * Factor out the type interface for shadow and null Introduce a separate type interface for types that will be handled by AD. This interface currently allows for defining the (unique) shadow type of the given type and for building a null value of the type. This is a step towards removing the dependency on the arithmetic dialect from the AD pass. * Drop AD pass dependency on the Arith dialect Now that null constant manipulation has been factored out into the interface, the only remaining use is an attempt to match a constant. Use the robust dialect-agnostic matcher instead. * Factor out common OpBuilder manipulation into the driver * Drop the dependency on FuncOps from GradientUtils We don't need to know the specific op class of a function-like op to clone it. This makes the autodiff interface independent of the func dialect, but the AD pass still depends on it because it creates a function call. There is currently no way of creating a function call in an abstracted way, short of which the pass dependency on the func dialect cannot be removed. * Update enzyme-mlir.yml * Only release llvm * Fix CI * Rebase * Simplify TA Co-authored-by: Alex Zinenko <[email protected]>
* Consider even atomic loads as non-active writing * Fix dso local nofree
Add autodiff attribute to foreign mods Forward information to codegen backend
This is no longer needed after Homebrew/homebrew-core#112154.
* Only with inst * cleanup * Add external warning * Add checkedmerge * fixup * preserve ptls * Fix LLVM Load default TT * Fix phi lose
* Add noalias preservation to unwrap * Fixup * ix up
* Custom zero * Enable on differentials * Cleanup
* Custom forward zero * Fix activity analysis of agg
* Keep integer extract * Fixup
* Cleanup allocation and remat * fix
update enzyme submodule
add new debug helper to print module
Enz update
add env to print mod after enzyme
make example less confusing
More helper
Bump Enzyme abi
ZuseZ4
force-pushed
the
master
branch
2 times, most recently
from
October 30, 2023 05:29
0bec16a
to
3e4e28a
Compare
ZuseZ4
force-pushed
the
master
branch
3 times, most recently
from
October 28, 2024 02:32
4f0389e
to
012062a
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Just in case that we want to look something up