Conversation
|
Oh crap lol I was working on top of a |
Codecov Report❌ Patch coverage is
... and 3 files with indirect coverage changes 🚀 New features to boost your workflow:
|
|
Weirdly the eig failures seem to go away on |
|
Your PR no longer requires formatting changes. Thank you for your contribution! |
e0a9f0c to
9742ab7
Compare
049c1a0 to
a60a6ca
Compare
|
This |
215e3f0 to
78d8a98
Compare
a938fca to
17e422c
Compare
17e422c to
c4d0f3d
Compare
e72c78c to
47a62e8
Compare
| return Δt | ||
| end | ||
| @eval function MAK.$pullback!( | ||
| Δt::AbstractTensorMap, ::Nothing, F, ΔF, inds; kwargs... |
There was a problem hiding this comment.
Out of curiosity, who is generating the nothings here?
There was a problem hiding this comment.
nvm, I see, do we also have this in the other parts of the code?
There was a problem hiding this comment.
What do you mean by other parts? It happens for pbs where the value of t doesn't contribute, it's a pattern inherited from MAK.
There was a problem hiding this comment.
thanks, that was exactly the answer I was after :) I guess there we don't have explicit dispatch for them, and use iszerotangent in the function bodies. Is that worth it to do here as well? Would it be as simple as nothing_or_block(x, c) = isnothing(x) ? x : block(x, c)?
There was a problem hiding this comment.
yeah we could do that, i'm always biased towards making another method but being less verbose is good
|
Gonna make this a draft since 1.10 is going to fail anyway and the forward mode stuff needs some love |
6131934 to
6a911a7
Compare
For some reason
svd_compactandsvd_trunc_no_errordon't play nicely with Enzyme here using the MAK rules, I think because of theDiagonalTensorMapoutput. I can try to investigate further if preferred. I also added some additional logic in pullbacks to match what the MAK pullbacks actually kick back.