Christopher Rackauckas
Christopher Rackauckas
Can we at least get a tag how it is? There are some important compat updates on master: https://github.com/JuliaGraphs/MetaGraphs.jl/compare/v0.6.3...master#diff-910a7b3ca0075d545dcec45cb7335ca9R12
Yeah so I was playing around with a few things this week that were relevant. The key here is: 1. ReverseDiff works on mutation, can work element-wise, but only on...
> Independently of the solution method, one would need an expression for the transposed Jacobian (or a function for it to do it in a matrix-free fashion). Reverse-mode AD is...
@wsmoses on: ```julia const USE_GPU = false using ParallelStencil, OrdinaryDiffEq using ParallelStencil.FiniteDifferences3D @static if USE_GPU @init_parallel_stencil(CUDA, Float64, 3); else @init_parallel_stencil(Threads, Float64, 3); end @parallel function diffusion3D_step!(T2, T, Ci, lam, dx,...
>BTW: Comparing against CuArray broadcasting makes also sense for us as because it is the standard way for doing array computations in Julia and it enables writing code syntactically very...
IIRC it's just: `w = [0 1 0; 1 -4 1; 0 1 0]`, and then `conv(A,w)` would be the 2D laplacian. Then the 3D is just using a 3D...
>Moreover, we should just compare the time for one iteration, else too many factors come into play (and we don't want to compare apples and oranges). Yes, just comparing one...
Yeah I was wondering on the CPU doing tests against LoopVectorization (since NNPACK is pretty bad) and GPU doing the tests vs cudnn. I think just doing the 3D Laplacian...
You forgot ParallelStencil.jl haha. The code should be something like: ```julia using ParallelStencil.FiniteDifferences3D #(...) @parallel function diffusion3D_step!(T2, T, Ci, lam) @inn(T2) = (lam*@inn(Ci)*(@d2_xi(T) + @d2_yi(T) + @d2_zi(T))); return end ```...
Maybe @DhairyaLGandhi knows a switch on NNlib we should try here. But yeah, it looks promising on GPU but much less so on CPU.