Skip to content

Draft: Use arrays in the seeding rather than hit vectors

Louis Henry requested to merge lohenry-useArrays2 into 2024-patches

This MR was originally intended to make clone killing more efficient in terms of CPU, but might also speed up the seeding as a whole.

As this stands, we lose 0.2% efficiency across the board but remove 25% of the ghosts. It is yet unclear why the XZ part is affected at all, since this change should be transparent.

Branch:

SeedTrackChecker_efca69d8              INFO Results
SeedTrackChecker_efca69d8              INFO **** Seed                            10921 tracks including            694 ghosts [ 6.35 %], Event average  3.08 % ****
SeedTrackChecker_efca69d8              INFO   01_hasT                        :    7394 from     8985 [ 82.29 %]      0 clones [ 0.00 %], purity: 99.50 %, hitEff: 97.63 %
SeedTrackChecker_efca69d8              INFO   02_long                        :    5221 from     5607 [ 93.12 %]      0 clones [ 0.00 %], purity: 99.64 %, hitEff: 98.29 %
SeedTrackChecker_efca69d8              INFO   03_long_P>5GeV                 :    3473 from     3578 [ 97.07 %]      0 clones [ 0.00 %], purity: 99.63 %, hitEff: 98.93 %
SeedTrackChecker_efca69d8              INFO   06_UT+T_strange                :     605 from      660 [ 91.67 %]      0 clones [ 0.00 %], purity: 99.69 %, hitEff: 97.89 %
SeedTrackChecker_efca69d8              INFO   07_UT+T_strange_P>5GeV         :     311 from      322 [ 96.58 %]      0 clones [ 0.00 %], purity: 99.83 %, hitEff: 99.13 %
SeedTrackChecker_efca69d8              INFO   08_noVelo+UT+T_strange         :     344 from      374 [ 91.98 %]      0 clones [ 0.00 %], purity: 99.78 %, hitEff: 97.87 %
SeedTrackChecker_efca69d8              INFO   09_noVelo+UT+T_strange_P>5GeV  :     178 from      187 [ 95.19 %]      0 clones [ 0.00 %], purity: 99.85 %, hitEff: 99.11 %
SeedTrackChecker_efca69d8              INFO   10_UT+T_SfromDB                :       9 from       11 [ 81.82 %]      0 clones [ 0.00 %], purity:100.00 %, hitEff: 98.22 %
SeedTrackChecker_efca69d8              INFO   11_UT+T_SfromDB_P>5GeV         :       2 from        3 [ 66.67 %]      0 clones [ 0.00 %], purity:100.00 %, hitEff:100.00 %
SeedTrackChecker_efca69d8              INFO   12_noVelo+UT+T_SfromDB_P>5GeV  :       2 from        3 [ 66.67 %]      0 clones [ 0.00 %], purity:100.00 %, hitEff:100.00 %
SeedTrackChecker_efca69d8              INFO   13_hasT_electrons              :    1344 from     2696 [ 49.85 %]      0 clones [ 0.00 %], purity: 99.71 %, hitEff: 96.81 %
SeedTrackChecker_efca69d8              INFO   14_long_electrons              :     342 from      399 [ 85.71 %]      0 clones [ 0.00 %], purity: 99.81 %, hitEff: 97.42 %
SeedTrackChecker_efca69d8              INFO   16_long_electrons_P>5GeV       :     179 from      193 [ 92.75 %]      0 clones [ 0.00 %], purity: 99.67 %, hitEff: 98.19 %

Master:

SeedTrackChecker_efca69d8              INFO Results
SeedTrackChecker_efca69d8              INFO **** Seed                            11152 tracks including            891 ghosts [ 7.99 %], Event average  3.52 % ****
SeedTrackChecker_efca69d8              INFO   01_hasT                        :    7414 from     8985 [ 82.52 %]      0 clones [ 0.00 %], purity: 99.50 %, hitEff: 97.61 %
SeedTrackChecker_efca69d8              INFO   02_long                        :    5236 from     5607 [ 93.38 %]      0 clones [ 0.00 %], purity: 99.63 %, hitEff: 98.26 %
SeedTrackChecker_efca69d8              INFO   03_long_P>5GeV                 :    3483 from     3578 [ 97.34 %]      0 clones [ 0.00 %], purity: 99.62 %, hitEff: 98.91 %
SeedTrackChecker_efca69d8              INFO   06_UT+T_strange                :     607 from      660 [ 91.97 %]      0 clones [ 0.00 %], purity: 99.67 %, hitEff: 97.90 %
SeedTrackChecker_efca69d8              INFO   07_UT+T_strange_P>5GeV         :     312 from      322 [ 96.89 %]      0 clones [ 0.00 %], purity: 99.80 %, hitEff: 99.16 %
SeedTrackChecker_efca69d8              INFO   08_noVelo+UT+T_strange         :     346 from      374 [ 92.51 %]      0 clones [ 0.00 %], purity: 99.75 %, hitEff: 97.86 %
SeedTrackChecker_efca69d8              INFO   09_noVelo+UT+T_strange_P>5GeV  :     179 from      187 [ 95.72 %]      0 clones [ 0.00 %], purity: 99.80 %, hitEff: 99.11 %
SeedTrackChecker_efca69d8              INFO   10_UT+T_SfromDB                :       9 from       11 [ 81.82 %]      0 clones [ 0.00 %], purity:100.00 %, hitEff: 98.22 %
SeedTrackChecker_efca69d8              INFO   11_UT+T_SfromDB_P>5GeV         :       2 from        3 [ 66.67 %]      0 clones [ 0.00 %], purity:100.00 %, hitEff:100.00 %
SeedTrackChecker_efca69d8              INFO   12_noVelo+UT+T_SfromDB_P>5GeV  :       2 from        3 [ 66.67 %]      0 clones [ 0.00 %], purity:100.00 %, hitEff:100.00 %
SeedTrackChecker_efca69d8              INFO   13_hasT_electrons              :    1348 from     2696 [ 50.00 %]      0 clones [ 0.00 %], purity: 99.71 %, hitEff: 96.80 %
SeedTrackChecker_efca69d8              INFO   14_long_electrons              :     342 from      399 [ 85.71 %]      0 clones [ 0.00 %], purity: 99.81 %, hitEff: 97.42 %
SeedTrackChecker_efca69d8              INFO   16_long_electrons_P>5GeV       :     179 from      193 [ 92.75 %]      0 clones [ 0.00 %], purity: 99.67 %, hitEff: 98.19 %

Merge request reports