Test against Enzyme#2636
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2636 +/- ##
=======================================
Coverage 86.51% 86.51%
=======================================
Files 20 20
Lines 1261 1261
=======================================
Hits 1091 1091
Misses 170 170 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Pull Request Test Coverage Report for Build 17703888586Details
💛 - Coveralls |
|
hm good progress but some variation hits a segfault (though notably not within Enzyme code funny enough). @penelopeysm and/or @mhauru would you be able to extract a reproducer for me, and I can make sure it gets fixed |
|
Hi @wsmoses I didn't look at all of them individually but I don't see which CI run is failing due to segfaults.
- eltypes_by_adtype = Dict(
+ eltypes_by_adtype = Dict{Type,Tuple}(It's likely that the adtype needs It's of course possible that making these changes will reveal new errors, but we can deal with that if it happens then. More broadly speaking though testing on Turing is not very diagnostic IMO. Of course happy to add tests but my point is that the vast majority of things will be caught in DynamicPPL and if AD tests pass there I would say with ≥95% confidence that it will pass here. Regarding DynamicPPL, everything passes fine on the current release of v0.36 but Enzyme has been failing on v0.37. I already posted an MWE at EnzymeAD/Enzyme.jl#2429 (see TuringLang/DynamicPPL.jl#985 if you'd like a CI log) so IMO from our side that's the highest priority thing that we'd like to get fixed, although I've not chased up on it since I'm not sure when 0.37 will actually be released. |
|
There's a bunch of There are pretty huge changes to DynamicPPL coming up that will involve this code path so I will wait for the dust around that to settle first. On a more general note I don't think it's feasible to simply test everything with Enzyme forward + reverse because the compilation just makes CI take a really long time which is kind of unfair. I think it would be a sensible option to define a smaller set of Enzyme AD tests and run them separately (similar to what we do on DynamicPPL). |
|
tangentially, now that it seems that all of the dynamicppl thigns are settled, can we try to narrow down the remaining failures? |
|
For future reference: The Turing.jl team cannot help with Enzyme bugs. Please report issues directly to the Enzyme repository. As a small research team, we don't have the capacity to help minimize or debug Enzyme-related issues. |
Let's see what fails.
Testing things is useful to make sure things continue to work and don't accidentally break in the future :)