Skip to content

Conversation

@jgreener64
Copy link
Member

Switching from using Zygote+Enzyme to just using Enzyme for AD allows us to rewrite much of the main computation code to mutate memory. This improves performance on CPU and GPU.

Opening this PR to test with CI.

@codecov
Copy link

codecov bot commented Jul 26, 2024

Codecov Report

Attention: Patch coverage is 70.58233% with 293 lines in your changes missing coverage. Please review.

Project coverage is 74.05%. Comparing base (b440abd) to head (e9ad4ed).
Report is 75 commits behind head on master.

Files with missing lines Patch % Lines
src/cuda.jl 0.00% 70 Missing ⚠️
src/force.jl 61.16% 40 Missing ⚠️
src/energy.jl 52.43% 39 Missing ⚠️
src/interactions/implicit_solvent.jl 64.77% 31 Missing ⚠️
ext/MollyEnzymeExt.jl 0.00% 17 Missing ⚠️
src/types.jl 76.19% 15 Missing ⚠️
src/interactions/coulomb.jl 76.27% 14 Missing ⚠️
src/interactions/lennard_jones.jl 75.00% 13 Missing ⚠️
src/spatial.jl 72.09% 12 Missing ⚠️
src/interactions/buckingham.jl 72.72% 9 Missing ⚠️
... and 8 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #182      +/-   ##
==========================================
+ Coverage   72.69%   74.05%   +1.36%     
==========================================
  Files          37       36       -1     
  Lines        5560     4942     -618     
==========================================
- Hits         4042     3660     -382     
+ Misses       1518     1282     -236     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@wsmoses
Copy link

wsmoses commented Aug 26, 2024

@jgreener64 if any of these issues are still outstanding, I can try to quickly fix if you have MWE's

@jgreener64
Copy link
Member Author

Thanks for asking. It's mostly the GPU reduction stuff (JuliaGPU/CUDA.jl#2471) and any further issues that uncovers.

Also EnzymeAD/Enzyme.jl#1672 would be useful but is not blocking.

@jgreener64 jgreener64 merged commit a1ee913 into master Oct 30, 2024
5 of 8 checks passed
@jgreener64
Copy link
Member Author

Merging this to prevent development stalling elsewhere. There are a few things that need fixing before release related to Enzyme, GPU support and docs updates.

@jgreener64 jgreener64 deleted the noalloc branch October 30, 2024 14:50
ToucheSir added a commit to FluxML/ZygoteRules.jl that referenced this pull request Jan 21, 2025
Molly.jl no longer uses Zygote: JuliaMolSim/Molly.jl#182.

Are there any other packages here which should go? The fewer we have to deal with, the faster CI runs and the fewer false positives we get from it.
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