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

perf: Improve Hough Transform performance #3461

Merged
merged 55 commits into from
Aug 30, 2024

Conversation

dimitra97
Copy link
Contributor

@dimitra97 dimitra97 commented Jul 31, 2024

This PR introduces some changes that make the Hough Transform Algorithm faster.

  • It replaces the HoughVectors with the usage of the Grid that already exists in Acts.
  • It replaces the m_hits and m_layers with vectors instead of sets and also use indices in order to manipulate their size.
  • Also replae some other sets--->unordered sets
  • Expand the usage of the global bin index for the cells on the HoughPlane instead of the two coordinates (x,y) because we wanted to replace maps with unordered maps.

@goblirsc @junggjo9 @noemina @asalzburger

@github-actions github-actions bot added Component - Core Affects the Core module Component - Examples Affects the Examples module Seeding Track Finding labels Jul 31, 2024
Copy link

github-actions bot commented Jul 31, 2024

📊: Physics performance monitoring for cb784eb

Full contents

physmon summary

@junggjo9
Copy link
Contributor

Can you please add the unit test for the dynamic array?

@dimitra97
Copy link
Contributor Author

dimitra97 commented Aug 28, 2024

Also efficiency check before and after the changes in the Hough Transform (with Athena main latest):
image

andiwand
andiwand previously approved these changes Aug 29, 2024
Copy link
Contributor

@andiwand andiwand left a comment

Choose a reason for hiding this comment

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

Left a couple of nitpicky comments - other than that looks good to me.

Is this a breaking change? If so we have to schedule it for v37

Core/include/Acts/Seeding/HoughTransformUtils.hpp Outdated Show resolved Hide resolved
Core/include/Acts/Seeding/HoughTransformUtils.hpp Outdated Show resolved Hide resolved
Core/include/Acts/Seeding/HoughTransformUtils.hpp Outdated Show resolved Hide resolved
Core/include/Acts/Seeding/HoughTransformUtils.hpp Outdated Show resolved Hide resolved
Core/include/Acts/Seeding/HoughTransformUtils.hpp Outdated Show resolved Hide resolved
Core/include/Acts/Seeding/HoughTransformUtils.hpp Outdated Show resolved Hide resolved
@andiwand andiwand added this to the next milestone Aug 29, 2024
@acts-project-service acts-project-service added the Fails Athena tests This PR causes a failure in the Athena tests label Aug 29, 2024
@andiwand andiwand removed the Fails Athena tests This PR causes a failure in the Athena tests label Aug 29, 2024
@andiwand andiwand changed the title refactor: Accelerating the Hough Transform perf: Improve Hough Transform performance Aug 29, 2024
Copy link

sonarcloud bot commented Aug 30, 2024

@asalzburger asalzburger merged commit 0948768 into acts-project:main Aug 30, 2024
42 checks passed
@andiwand andiwand modified the milestones: next, v36.3.0 Sep 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component - Core Affects the Core module Component - Examples Affects the Examples module Seeding Track Finding
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants