Skip to content

Conversation

@samf25
Copy link

@samf25 samf25 commented Dec 2, 2025

I made a number of changes to the algorithms in k4ActsTracking.

  1. I improved the TruthTracking alg. Previously, it wasn't actually making use of its maps' runtime speed ups. I also used tbb's threading for the beefy for loop. This took the runtime (with BIB) from ~1000s to 0.5141s.
  2. I used stable sort and memory reserving instead of the insertion method in the DuplicateRemoval to decrease runtime (I think this is $N^2 \rightarrow N\log N$).
  3. I parallelized the CKFTrackingAlg's bottle neck loops (hit loop and seeding loop). This brings the runtime under control $\left(\frac{1}{n_{Threads}}\right)$ without increasing the memory demands (see plot).
WithBIBNaive

samf25 and others added 30 commits September 23, 2025 09:48
It's weird that this didn't pull with the rest of the changes ...
This only makes things build with v32 and v43, there are certainly
versions in between where different changes would be necessary.

(Potentially incomplete) list of related ACTS PRs:
- acts-project/acts#3337
- acts-project/acts#4005
Removed ROOT, EDM4hep, and Gaudi from the list of acts.
- Modified ACTSAlgBase to update geometry configuration
- Added buildsub/, installsub/, and setup.sh to gitignore
mlarson02 and others added 26 commits November 19, 2025 14:06
Fixing acts v43 runtime error from accessing non-smoothed track states
Comment for the constructor no longer applies (and maybe never has?). We
cannot default construct a class that has a reference member.
copyFrom that takes a second boolean argument has been
deprecated (technically only if the second argument == false).
Corresponding acts PR: acts-project/acts#4570
Co-authored-by: Thomas Madlener <[email protected]>
Fix warnings and compilation issues for key4hep nightlies
@samf25
Copy link
Author

samf25 commented Dec 3, 2025

The steering files for these new, parallel algs can be found here.
These steering files also use the thread-safe version of k4GaudiPandora

@madbaron
Copy link

Hi @samf25,

we've merged the PR with the previous set of updates into the key4hep/main.
When you have a moment, could you take a look at resolving the conflicts here?

We'll then merge this into our main, and start the PR to propagate the changes upstream.
Once we are done with this, I think we'll be able to close our fork, so any additional updates should target https://github.com/key4hep/k4ActsTracking directly.

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