From: prathamesh tagore (prathameshtagore_at_[hidden])
Date: 2021-06-01 14:35:08
> What was the conclusion did I miss anything here?
Olzhas explained to me that one approach can be to load required elements
from image and kernel in a buffer having its size equivalent to L2 or L3
cache of the CPU and then store results in destination view after applying
convolution. This would solve the problem of multiple cache reloads and
misses which decreases the performance of our current implementation.
(Something roughly similar is used in Gil's current implementation of 1D
convolution wherein elements from rows of an image are stored in a buffer
and are then correlated with kernel elements by using
We also agreed on discussing CPU related implementation of OpenCv's 2D
convolution in our next meeting.
Currently, I am working on adding a "reflection" option for boundary
manipulation in 1D convolution(third task of my community bonding period).
On Tue, Jun 1, 2021 at 5:06 PM Pranam Lashkari <plashkari628_at_[hidden]>
> On Mon, May 31, 2021 at 11:29 PM prathamesh tagore <
> prathameshtagore_at_[hidden]> wrote:
> > 3. Discussed about tiling implementation for 2D convolution with @Olzhas.
> What was the conclusion did I miss anything here? couldn't find the
> conversion anywhere :D
> Thank you,
> Pranam Lashkari, https://lpranam.github.io/
> Boost-gil mailing list
Boost list run by Boost-Gil-Owners