Skip to content
Snippets Groups Projects
Commit 7c7657a3 authored by Steven Schramm's avatar Steven Schramm
Browse files

Bugfix and optimization for new JER smearing

The JetCalibTools implementation has sub-optimal CPU performance,
namely it was creating projections from a TH2 each time it was called
due to the need to interpolate only in one dimension.  This has now
been fixed by projecting and caching all bins once during the
initialize() method and then using them directly.  The speedup
is considerable and may be somehow also related to a problem observed
on the PATHelp list.  This is not entirely clear, as the underlying
cause may EventLoop related and just be hidden due to the
substantial CPU reduction from this update.  Either way, this is a
useful CPU reduction and if the other problem re-appears in more
intensive uses, then it can be further investigated.

In addition, the process of debugging this slowdown led to the
discovery of a bug in the new resolution recommendations.  If the
tool was configured for GeV inputs, everything was fine.  However,
if the tool was configured for MeV inputs, then the tool was using
the wrong values for smearing.  The impact of this mistake was
strongly suppressed due to only the difference between data and MC
being applied (and this difference is roughly constant with pT),
but it is still a non-negligible effect.


Former-commit-id: 9e73f2c5bce8c7ed0348f65f6125d87fbd4e086e
parent d108660c
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment