Michael Abbott

Results 1316 comments of Michael Abbott

For the forward pass it has a loop nest like this (from `verbose=2` output): ``` for j = 𝒢𝓍j for i = 𝒢𝓍i π’œπ’Έπ’Έ = ♻️ === nothing ? zero(𝒯)...

I think the reason it doesn't directly write the gradients as separate calls is that it doesn't know how to solve for the shifts necessary for convolutions etc. The present...

They should be disallowed on the LHS, that they aren't is a bug. But the gradient calculation always wants to move them to the left, as you're now writing into...

I wouldn't call this intended but it is unfortunately expected. Macros are expanded outermost first (the opposite order to functions) and thus `@views` changes code before `@tullio` sees it, and...

What would you like it to do? It uses `axes(A)` everywhere, and makes output arrays by calling `similar`. Thus some things with `SOneTo` will propagate: ```julia julia> v = HybridArray{Tuple{3}}(ones(3))...

OK. This does run for me, although it makes a Matrix, where I'd expect a HybridMatrix. Not sure if this is intended behaviour, seems bit like https://github.com/JuliaArrays/HybridArrays.jl/issues/36 ```julia julia> axes(d1)...

Ok. I guess the short answer could have been that Tullio doesn't know about HybridArrays, so it can't do much that is special. Maybe the compiler will figure something out...

That `parent` should probably be removed. I have a vague memory that this was working around a bug in NamedDims.jl, at some point.

`rrule(reduce, +, x; kw...)` can just call `rrule(sum, x; kw...)` right?

Sure. The `rrule` for sum just calls `sum` again on what it's given, for the forward pass, and thus uses the same GPU code as without AD. (And the reverse...