12 ms·
https://github.com/mratsim/Arraymancer https://github.com/mratsim/Arraymancer probably has a lot of examples in it's implementation
by ca_parody 6y ago
https://github.com/mratsim/Arraymancer https://github.com/mratsim/Arraymancer probably has a lot of examples in it's implementation
- memexy 6y agoYup. That's what popped up when I searched. Thanks for the reference though.
- mratsim 6y agoThe CUDA kernels are stored here: - https://github.com/mratsim/Arraymancer/blob/master/src/tensor/private/incl_kernels_cuda.nim https://github.com/mratsim/Arraymancer/blob/master/src/tenso... With the higher order function: - https://github.com/mratsim/Arraymancer/blob/master/src/tensor/private/incl_higher_order_cuda.nim https://github.com/mratsim/Arraymancer/blob/master/src/tenso... And their code generation: - https://github.com/mratsim/Arraymancer/blob/master/src/tensor/operators_blas_l1_cuda.nim#L37 https://github.com/mratsim/Arraymancer/blob/master/src/tenso... It's possible to avoid inlining C++ like they do here: - https://github.com/jcosborn/cudanim/blob/338be782/cuda.nim#L219-L222 https://github.com/jcosborn/cudanim/blob/338be782/cuda.nim#L... but I will explore that later.
- memexy 6y agoThanks.