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

Phase-2 mkFit: propagation to plane / Kalman operations on plane / Matriplex with support for scalar operations and VDT (superseding #148) #151

Merged
merged 16 commits into from
Oct 17, 2024

Conversation

mmasciov
Copy link

@mmasciov mmasciov commented Aug 27, 2024

PR description:

As per title, this PR supersedes PR #148.

This PR is focusing on mkFit developments for phase-2.
While originally meant to be purely technical (mkFit is not yet enabled by default in phase-2), a small bug was fixed that is slightly affecting the phase-1/Run-3 performance. This was reported at Tracking POG on October 7, 2024. Changes for Run-3 are anyway negligible.

For phase-2 mkFit, this PR:

  • introduces propagation to plane and Kalman operations on plane during pattern recognition;
  • introduces support for scalar operations and VDT in Matriplex.

Propagation to plane is used as a mkFit-default choice for phase-2 (where mkFit is not deployed yet), being required to select hits on tilted layers, while phase-1 configuration is left unchanged (no significant gain wrt. current default).

In addition, standalone mkFit functionalities are also extended/improved.

PR validation:

Please, refer to presentation at Tracking POG on October 7, 2024 (including MTV results).

--> For phase-1 (Run-3), (only physics) performance is only slightly affected, due to a small bug-fix in application of material effects (commit 4a6088d).

--> For phase-2, mkFit physics performance (mkFit is not used by default so far) is largely improved.

@mmasciov mmasciov force-pushed the prop-plane-rb1-plus branch 2 times, most recently from f9e6c06 to b48568d Compare September 30, 2024 17:04
@mmasciov mmasciov force-pushed the prop-plane-rb1-plus branch 2 times, most recently from be6c619 to 4c28443 Compare October 9, 2024 15:49
@mmasciov mmasciov changed the title Propagate to plane / Kalman on plane / Matriplex with support for scalar operations and VDT (superseding #148) Phase-2 mkFit: propagation to plane / Kalman operations on plane / Matriplex with support for scalar operations and VDT (superseding #148) Oct 9, 2024
@osschar
Copy link
Collaborator

osschar commented Oct 10, 2024

I'm not able to reproduce the second set of warnings in RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc -- it might be a false positive. I was running: USER_CXXFLAGS='-Wno-register -fsyntax-only' scram build -k -j 32 COMPILER='llvm compile'

I'll review things very carefully once more ... and I probably need a newer release-base.

cerati and others added 16 commits October 15, 2024 04:42
….cc), move structs BeamSpot and DeadRegion out of Hit.h.
…ify the new propagateToPlane code.

* Add VDT support to Matriplex, mostly to work on Matriplex scalar types.
  - Functions are prefixed as fast_xyzz(), same as in VDT.
  - Controlled by define MPLEX_VDT. Additionally, if MPLEX_VDT_USE_STD is also
    defined, the fast_xyzz() functions fall back to using std:: variants.
    This is useful for performance comparisons.
  - Add reduction operator and an assigner class / method to extract scalars
    (one i,j element) or to assign to it.

* Massage propagateToPlane low level implementation
  - Use the new Matriplex functionality to simplify code.
  - Remove the nmin, nmax indices initially introdcued to support GPU code.
…ements. Define TBB_DISABLE in Makefile.config to make it so.
- PropagationMPlex.cc - prop-to-R
- PropagationMPlexEndcap.cc - prop-to-Z
- PropagationMPlexPlane.cc - prop-to-plane
- PropagationMPlexCommon.cc - applyMaterialEffects, common multiplication functions.

Move code from PropagationMPlex.icc into corresponding files above.

Replace templates that were used for CUDA testing a long time back with
explicit types.
…S flags, keeping option to modify them for R&D and/or testing purposes
@mmasciov mmasciov force-pushed the prop-plane-rb1-plus branch from bfab41c to 62bccea Compare October 15, 2024 13:01
@mmasciov mmasciov merged commit f97584b into master Oct 17, 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.

3 participants