RDataFrame: Easy Parallel ROOT Analysis at 100 Threads

Danilo Piparo, Philippe Canal, Enrico Guiraud, Xavier Valls Pla, Gerardo Ganis, Guilherme Amadio, Axel Naumann, Enric Tejedor, A. Forti, L. Betev, M. Litmaath, O. Smirnova (+1 others)
2019 EPJ Web of Conferences  
The Physics programmes of LHC Run III and HL-LHC challenge the HEP community. The volume of data to be handled is unprecedented at every step of the data processing chain: analysis is no exception. Physicists must be provided with first-class analysis tools which are easy to use, exploit bleeding edge hardware technologies and allow to seamlessly express parallelism. This document discusses the declarative analysis engine of ROOT, RDataFrame, and gives details about how it allows to profitably
more » ... xploit commodity hardware as well as high-end servers and manycore accelerators thanks to the synergy with the existing parallelised ROOT components. Real-life analyses of LHC experiments' data expressed in terms of RDataFrame are presented, highlighting the programming model provided to express them in a concise and powerful way. The recent developments which make RDataFrame a lightweight data processing framework are described, such as callbacks and I/O capabilities. Finally, the flexibility of RDataFrame and its ability to read data formats other than ROOT's are characterised, as an example it is discussed how RDataFrame can directly read and analyse LHCb's raw data format MDF.
doi:10.1051/epjconf/201921406029 fatcat:i5fdvivpcrc3znyhewddoz3dbu