-
Notifications
You must be signed in to change notification settings - Fork 178
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
refactor: Allow TrackState copyFrom for different MTJs #2204
refactor: Allow TrackState copyFrom for different MTJs #2204
Conversation
I also had to give the TrackStateProxy access to calll referenceSurfacePointer of the ConstTrackStateProxy in v25.0.1 |
I think that should not be needed anymore in 26+ anyway |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes make sense. Approved.
Codecov Report
@@ Coverage Diff @@
## main #2204 +/- ##
==========================================
+ Coverage 49.33% 49.38% +0.04%
==========================================
Files 441 441
Lines 25207 25172 -35
Branches 11622 11616 -6
==========================================
- Hits 12436 12431 -5
+ Misses 4513 4485 -28
+ Partials 8258 8256 -2
... and 4 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
📊 Physics performance monitoring for 4d2ab04Summary VertexingSeedingCKFAmbiguity resolutionTruth tracking (Kalman Filter)Truth tracking (GSF) |
This uses a newly added function to reverse track states to create the track states with reverted order and then flip the order around to produce a good copy. Blocked by: - #2204
We use a lot of memory in busy events, e.g. for ttbar pu200 we use multiple gigabytes of track state storage. This PR reduces this by rolling a track selection into the track finding algorithm. The CKF now operates on a temporary track container that is cleared between seeds and reused. Only tracks that pass the selection are copied into the output collection. In my testing this reduces the memory consumption by about 2x. Before:  After:  Blocked by: - #2202 - #2201 - #2203 - #2204 - #2205 - #2267
This allows copying between MTJ backends by relaxing the template arguments.