Concurrent processing of events in hybrid MP+MT workers
Modified `AthenaMPTools/SharedHiveEvtQueueConsumer` so that it can process events concurrently. In order to achieve that this tool is now using the `AthenaMtesEventLoopMgr` as the event processor, instead of the previously used `AthenaHiveEventLoopMgr`. Also introduced a helper abstract interface `AthenaKernel/IHybridProcessorHelper` to allow the `SharedHiveEvtQueueConsumer` tool to call certain methods of the `AthenaMtesEventLoopMgr`.
Showing
- Control/AthenaCommon/python/AtlasThreadedJob.py 4 additions, 3 deletionsControl/AthenaCommon/python/AtlasThreadedJob.py
- Control/AthenaKernel/AthenaKernel/IHybridProcessorHelper.h 23 additions, 0 deletionsControl/AthenaKernel/AthenaKernel/IHybridProcessorHelper.h
- Control/AthenaMP/python/PyComps.py 4 additions, 6 deletionsControl/AthenaMP/python/PyComps.py
- Control/AthenaMPTools/src/SharedHiveEvtQueueConsumer.cxx 104 additions, 222 deletionsControl/AthenaMPTools/src/SharedHiveEvtQueueConsumer.cxx
- Control/AthenaMPTools/src/SharedHiveEvtQueueConsumer.h 1 addition, 11 deletionsControl/AthenaMPTools/src/SharedHiveEvtQueueConsumer.h
- Control/AthenaServices/src/AthenaMtesEventLoopMgr.cxx 37 additions, 19 deletionsControl/AthenaServices/src/AthenaMtesEventLoopMgr.cxx
- Control/AthenaServices/src/AthenaMtesEventLoopMgr.h 17 additions, 5 deletionsControl/AthenaServices/src/AthenaMtesEventLoopMgr.h
Loading
Please register or sign in to comment