Overview of HERDOS TES and SNiPER TES
HERDOS TES and SNiPER TES are discussed in detail, outlining their implementations and distinctive features. The discussion includes insights on TES requirements, concrete implementations, DataBuffer usage, HERD TES reliance on podio, and the migration plan to podio
- Frame. Additionally
- EDM object storage in memory
- I/O podio classes
- and GlobalStore for MT applications are elaborated upon.
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
Discussion of HERDOS TES and SNiPER TES 2024.6.28 1
HERDOS TES and SNiPER TES SNiPER TES is more like an abstract layer Different experiments can have quite different requirements for TES We want to keep SNiPER lightweighted (one of the reasons Gaudi is not used) The concrete TES implementation is up to the experiment HERD TES implementation details introduced in backup SNiPER does have one concrete TES implementation, DataBuffer, originally developed in the JUNO experiment, to cache multiple events sorted by time. (This is because a single physical signal can make multiple triggers in LS detectors) DataBuffer is pure based on C++ std, and the developers believe DataBuffer can be used by other neutrino (or dark matter) experiments, so it is made as part of SNiPER 2
HERDOS TES and SNiPER TES For HERDOS TES, we currently do not have the plan to make it as part of SNiPER HERDOS TES relies on podio. We do not want to make SNiPER rely on podio. (SNiPER core only uses std C++, to keep itself extreme thin) If we do see other experiments that use SNiPER want to use podio- based TES, we would consider doing so For HERDOS TES, the biggest move now is to migrate from podio::EventStore to podio::Frame (now being planned) 3
Backup 4
HERD TES EDM objects are stored in memory, shared by all user Algorithms User Algorithms access event data via collections, through DataHandle (or the getROColl and getRWColl macros) DetSimAlg DigiAlg RecAlg GET CREATE Collection Collection TES event mcpars scddigi mcpars scdhits par par par ... digi digi digi ... scdhits scdtrack calohits scddigi scdtrack scdcluster metadata hit hit hit ... trk trk trk ... Data I/O scdcluster calohits cluster cluster ... hit hit hit ... 6
HERDOS TES and I/O podio classes Code under offline/DataManagement/PodioDataSvc and offline/DataManagement/PodioSvc 7
GlobalStore for MT applications MT applications need to cache multiple events in memery GlobalStore is developed based on EventStore for MT applications Each worker thread processes events in parallel Lock event in GlobalStore before processing Free event in GlobalStore after processing Input and Output as independent threads GlobalStore 9
GlobalStore for MT applications MT applications need to cache multiple events in memery GlobalStore is developed based on EventStore for MT applications Each worker thread processes events in parallel Lock event in GlobalStore before processing Free event in GlobalStore after processing Input and Output as independent threads 10