Data scouting for cost monitoring
Implement data scouting result building and streaming for the cost monitoring HLT chain (ATR-20345, ATR-19360). It is done in a way with minimal modifications in TriggerEDM and TriggerMenuMT. The main change is the more involved result configuration which is now in full_menu.py job options and will be moved to TriggerJobOpts/TriggerConfig in a later MR (ATR-20273).
Following changes are included:
- Fix PEBInfoWriterAlg: don't look for "view" link from input decision, add "roi" link to output decision
- Define "CostMonDS" event building identifier in TriggerMenuMT and apply it in the costmonitor chain
- Allow data scouting identifiers to be valid targets in TriggerEDMRun3 list
- Fix testEDMRun3 to use TriggerEDMRun3.AllowedOutputFormats instead of hard-coded list
- Change TrigCostContainer EDM target from 'BS' to 'CostMonDS'
- Implement more correct BS result configuration in full_menu.py, which now takes care of data scouting results as well.
- Fix a debug message in GenerateMonitorChainDefs.py
- Fix getter functions in EventBuildingInfo
- Replace EventBuildingInfo.AllowedEventBuildingIdentifiers with EventBuildingInfo.getAllEventBuildingIdentifiers()
Running athenaHLT with full_menu.py job options and output writing enabled, I get a BS file which looks correct to me. Checked with trigbs_dumpHLTContentInBS_run3.py --stag --hltres --sizeSummary output_Child-001._0001.data
:
==================== Event: 1, RunNumber: 327265, LB: 100, Global_ID: 186525031, LVL1_ID: 4060342676, BC_ID: 339, TT: x81 ====================
Stream Tags: ['physics_Main', 'calibration_BeamSpot', 'calibration_CostMonitoring']
Found 2 HLT ROBs
-- ROBFragment SourceID: TDAQ_HLT, module=0 (opt=0), Size: 282704 bytes
-- ROBFragment SourceID: TDAQ_HLT, module=1 (opt=0), Size: 5396 bytes
==================== Event: 2, RunNumber: 327265, LB: 100, Global_ID: 186524665, LVL1_ID: 4060342310, BC_ID: 3284, TT: x81 ====================
Stream Tags: ['physics_Main', 'calibration_BeamSpot', 'calibration_CostMonitoring']
Found 2 HLT ROBs
-- ROBFragment SourceID: TDAQ_HLT, module=0 (opt=0), Size: 284172 bytes
-- ROBFragment SourceID: TDAQ_HLT, module=1 (opt=0), Size: 8636 bytes
(...)
==================== Event: 6, RunNumber: 327265, LB: 100, Global_ID: 186515186, LVL1_ID: 4060332831, BC_ID: 613, TT: x84 ====================
Stream Tags: ['physics_Main', 'calibration_BeamSpot', 'calibration_CostMonitoring', 'express_express', 'calibration_LArCells']
Found 2 HLT ROBs
-- ROBFragment SourceID: TDAQ_HLT, module=0 (opt=0), Size: 343612 bytes
-- ROBFragment SourceID: TDAQ_HLT, module=1 (opt=0), Size: 14008 bytes
(...)
-- TDAQ_HLT module 1 total size 528708 bytes, 10574.160 bytes/event
---- xAOD::TrigCompositeAuxContainer#HLT_TrigCostContainerAux. 178128 B 3562.560 B/ev
---- std::vector<unsigned long>#HLT_TrigCostContainerAux.start 67920 B 1358.400 B/ev
---- std::vector<unsigned long>#HLT_TrigCostContainerAux.stop 67920 B 1358.400 B/ev
---- std::vector<unsigned int>#HLT_TrigCostContainerAux.store 36760 B 735.200 B/ev
---- std::vector<unsigned int>#HLT_TrigCostContainerAux.thread 36760 B 735.200 B/ev
---- std::vector<unsigned int>#HLT_TrigCostContainerAux.alg 36560 B 731.200 B/ev
---- std::vector<unsigned int>#HLT_TrigCostContainerAux.slot 36560 B 731.200 B/ev
---- std::vector<int>#HLT_TrigCostContainerAux.roi 35160 B 703.200 B/ev
---- std::vector<short>#HLT_TrigCostContainerAux.view 19940 B 398.800 B/ev
---- xAOD::TrigCompositeContainer#HLT_TrigCostContainer 8800 B 176.000 B/ev