From: prathamesh tagore (prathameshtagore_at_[hidden])
Date: 2021-06-14 17:12:00
Week 1 (07/06/21 - 14/06/21) :
1. I wrote a celero benchmark for existing implementation of 2D convolution
which will be considered as a baseline for comparing all different versions
of modifications. Source code for this benchmark can be found here(
2. I implemented this(
version for 2D correlation and compared it with the current version.
Performance of the modified version is not what I expected (probably due to
slow traversal of 1D view pixel iterators). This (
file contains a celero benchmark comparing the modified and existing
version. Source code of the modified version is present here(
in the same branch.
3. I also tried a modified version of the previous algorithm. Major
difference between this version and the previous one is that the former
does not capture all individual elements of a subimage_view while
calculating the correlation output for a new pixel in dst_view. Instead, it
rotates the buffer vector and updates it with values of one new column
only. Its source code is present here (
The benchmark file comparing this version with the original version is here
Performance of both modified versions is nowhere close to what we would
want, however we can improve their structure iteratively. I have not
cleaned(add comments/remove debug statements etc.) from source files as
they are currently under heavy experimentation.
As of now, modified versions are not yet tested extensively on all types of
We need additional dependencies for compiling benchmark files, I have added
them in CMakeLists.txt of the root folder in the same branch. Specifying
build type while building benchmarks is also necessary.
On Mon, Jun 14, 2021 at 10:39 PM prathamesh tagore <
> This thread will contain weekly updates for my work during coding period
> of GSoC 2021.
Boost list run by Boost-Gil-Owners