Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convolutions tasks divided into different files #123

Merged
merged 8 commits into from
Feb 24, 2024

Conversation

AryanNanda17
Copy link
Contributor

This issue involves refactoring the provided convolution code into three separate files, each focusing on a specific aspect of convolution operations, and creating a separate folder for benchmarking the results of each file.
Resolved issue #120

@AryanNanda17
Copy link
Contributor Author

@PritK99, please checkout the PR and let me know if any change is required.

@PritK99
Copy link
Contributor

PritK99 commented Feb 21, 2024

Why are folders such as /src and /include a part of /benchmark directory? The idea was to just create a new folder /benchmark to deal with the time features.

@PritK99
Copy link
Contributor

PritK99 commented Feb 21, 2024

@advait-0 Could you please review this PR and suggest changes.

@AryanNanda17
Copy link
Contributor Author

In the benchmarks folder time taken by each convolution is also being printed. In order to Benchmark(time taken by convolution operation), we would have to perform convolution, so the folders /src and /include are important.

@advait-0
Copy link
Contributor

@AryanNanda17 please add the usage instructions to run each file in the sub-folder readme.

@AryanNanda17
Copy link
Contributor Author

@advait-0, I made the required changes please check it out.

@aPR0T0
Copy link
Member

aPR0T0 commented Feb 23, 2024

Hello @AryanNanda17, Please add benchmarks to each file or remove them from the separable convolutions as they all should have a common standard. The point of the benchmark here is to understand the reason behind the use of separable convolutions

Copy link
Member

@aPR0T0 aPR0T0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add / remove benchmarks

@AryanNanda17
Copy link
Contributor Author

Hello @AryanNanda17, Please add benchmarks to each file or remove them from the separable convolutions as they all should have a common standard. The point of the benchmark here is to understand the reason behind the use of separable convolutions

Hello @aPR0T0, could you please elaborate on this?
Because from what I understand issue #120 aims to make the code easier. So, I have separated all three approaches of convolutions in our case into three different files without benchmarks. For benchmarks, I have created a separate folder /benchmarks
Screenshot 2024-02-24 at 12 19 07 AM
The benchmarks folder benchmarks all three types of convolutions in our case!

@AryanNanda17 AryanNanda17 requested a review from aPR0T0 February 23, 2024 18:51
@aPR0T0
Copy link
Member

aPR0T0 commented Feb 23, 2024

Sure @AryanNanda17 , makes sense then. Great work!

Just a small change, add benchmark ka example execution in readme

@AryanNanda17
Copy link
Contributor Author

Sure @AryanNanda17 , makes sense then. Great work!

Just a small change, add benchmark ka example execution in readme

Thanks!

@AryanNanda17
Copy link
Contributor Author

@aPR0T0, I added the results of Benchmarks in Readme.
Please check it out.

Copy link
Member

@SuperChamp234 SuperChamp234 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot 2024-02-24 at 9 05 03 AM

Why does the benchmarking folder contain the same files from the parent folder?

Ideally, the benchmarking folder should just have a file that will use the convolutions demonstrated in it’s parent folder and show the difference. Different files for each of the convolutions is not necessary.

@SuperChamp234
Copy link
Member

Please make the change of removing unnecessary files and merge the benchmarking code into one file @AryanNanda17. Good job so far!

@AryanNanda17
Copy link
Contributor Author

Please make the change of removing unnecessary files and merge the benchmarking code into one file @AryanNanda17.

Hello @SuperChamp234!

  • In issue Refactoring Convolution Filtering #120 , @PritK99 suggested to make three separate files for each type of convolution and create a separate folder to benchmark the results of each convolution file. If we merge all three convolution files into one code, the code would become hard as before. But our goal here is to enhance code modularity, readability, and maintainability by isolating different functionalities into distinct files.

@aPR0T0
Copy link
Member

aPR0T0 commented Feb 24, 2024

Please make the change of removing unnecessary files and merge the benchmarking code into one file @AryanNanda17.

Hello @SuperChamp234!

* In issue [Refactoring Convolution Filtering #120](https://github.com/SRA-VJTI/Pixels_Seminar/issues/120) , @PritK99 suggested to make three separate files for each type of convolution and create a separate folder to benchmark the results of **each convolution file**. If we merge all three convolution files into one code, the code would become hard as before. But our goal here is to enhance code modularity, readability, and maintainability by isolating different functionalities into distinct files.

Hello @AryanNanda17 , that's right we need to simplify the code

Just restructure the directories as ->

  1. benchmark
  2. include
  3. src
  4. assets
    other files

and inside benchmark just keep cpp files, this way the folder remains generic

@AryanNanda17
Copy link
Contributor Author

@aPR0T0, I made the changes. Please check it out.

Copy link
Member

@aPR0T0 aPR0T0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!
Great work @AryanNanda17 !

@aPR0T0 aPR0T0 requested a review from SuperChamp234 February 24, 2024 09:31
@SuperChamp234 SuperChamp234 merged commit 555238f into SRA-VJTI:main Feb 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants