diff --git a/HLT/Trigger/TrigControl/TrigServices/python/TrigServicesConfig.py b/HLT/Trigger/TrigControl/TrigServices/python/TrigServicesConfig.py index d6c2cb8f5459454d5a9a51d77e999e9de1ed17be..06c8c51f1692b29a0678dc9bf0dd6923b11495e0 100644 --- a/HLT/Trigger/TrigControl/TrigServices/python/TrigServicesConfig.py +++ b/HLT/Trigger/TrigControl/TrigServices/python/TrigServicesConfig.py @@ -156,6 +156,13 @@ class HltEventLoopMgr(_HltEventLoopMgr): title='Time between freeing and assigning a scheduler slot;Time [ms];Events', xbins=400, xmin=0, xmax=800, opt='kCanRebin') + self.MonTool.defineHistogram('TIME_clearStore', path='EXPERT', type='TH1F', + title='Time of clearStore() calls;Time [ms];Calls', + xbins=200, xmin=0, xmax=50) + self.MonTool.defineHistogram('TIME_clearStore;TIME_clearStore_extRange', path='EXPERT', type='TH1F', + title='Time of clearStore() calls;Time [ms];Calls', + xbins=200, xmin=0, xmax=200, opt='kCanRebin') + from TrigSteerMonitor.TrigSteerMonitorConfig import getTrigErrorMonTool self.TrigErrorMonTool = getTrigErrorMonTool() diff --git a/HLT/Trigger/TrigControl/TrigServices/src/HltEventLoopMgr.cxx b/HLT/Trigger/TrigControl/TrigServices/src/HltEventLoopMgr.cxx index c5042bb5469ff22353e29838607cf351510a4bdc..79f872a18c446dae0b92ee1246aec7217d7de54d 100644 --- a/HLT/Trigger/TrigControl/TrigServices/src/HltEventLoopMgr.cxx +++ b/HLT/Trigger/TrigControl/TrigServices/src/HltEventLoopMgr.cxx @@ -1392,7 +1392,9 @@ HltEventLoopMgr::DrainSchedulerStatusCode HltEventLoopMgr::drainScheduler() StatusCode HltEventLoopMgr::clearWBSlot(size_t evtSlot) const { ATH_MSG_VERBOSE("start of " << __FUNCTION__); + auto monTime = Monitored::Timer<std::chrono::duration<float, std::milli>>("TIME_clearStore"); StatusCode sc = m_whiteboard->clearStore(evtSlot); + Monitored::Group(m_monTool, monTime); if( !sc.isSuccess() ) { ATH_MSG_WARNING("Clear of event data store failed"); }