Closed amandalund closed 2 months ago
It's interesting that this affects orange performance on testem3 quite a bit but not vecgeom. It's not clear to me why we might be hitting the substep limit more often with orange...
@amandalund one potential is that with v0.5 the auto-converted testem3 is a bit wacky (it has a "background volume" of a cube minus all the enclosing cubes) and could be returning a safety distance of zero when it shouldn't be...
Following up on #1236, this reduces the default maximum number of substeps (per step iteration) in the field propagator from 100 to 10. There's a tradeoff between tracks taking more substeps in fewer step iterations vs. fewer substeps in more step iterations, but the latter significantly improves load blancing in the along-step kernel, and the number of tracks taking many substeps to converge is small (e.g., <2% of tracks take more than 10 total substeps in cms2018). This shows the change in throughput and work for the field regression problems using 10 max substeps vs. 100:
I also gathered some information on the number of looping tracks killed before and after this change, and reducing the substep limit didn't seem to have a significant impact:
100
0
0.00000000e+00
0
100
8
2.68380684e-08
12.881228
100
5
1.67727706e-08
4.8461276
100
4
1.54548461e-08
1.92713343
100
10
3.86507106e-08
14.046066
100
6
2.22227110e-08
7.726298
100
4
1.48183963e-08
2.7987901
100
149
5.07660725e-07
961.003735