dcv
dcv copied to clipboard
Filters should be separated
See https://en.wikipedia.org/wiki/Separable_filter
The idea of separable filter is to perform one direction and then another one.
We also need to add image cache-friendly blocking. Image should be splitted into blocks 15 KBs each. Then for each block we apply H and G filter parts.
In addition we may remove Yes.vectorized
and Yes.fastmath
(needs benchmark).
see also #86
We also need to add image cache-friendly blocking. Image should be splitted into blocks 15 KBs each
This is something I've been meaning to talk to you about for some time now. Halide language may come as nice reference, for cache friendliness: http://halide-lang.org/
Awesome let's do it. Do you have a proposition how do we do this? I could come up with something, but I'd really like go hear what you think. Do we need (or want) to redesign the base filtering API?
Halide language may come as nice reference, for cache friendliness: http://halide-lang.org/
Awesome! We can implement Halide as library solution in Dlang :-)
We can implement Halide as library solution in Dlang
What do you mean by this? Using halide inside D?
What do you mean by this? Using halide inside D?
No, we can implement its functionality as an ndslice module
we can implement its functionality as ndslice module
YES - This is something I've been thinking about for a long time - we should definitely do this!