EPJ Web of Conferences (Jan 2020)
Faster RooFitting: Automated parallel calculation of collaborative statistical models
Abstract
RooFit [1, 2] is the main statistical modeling and fitting package used to extract physical parameters from reduced particle collision data, e.g. the Higgs boson experiments at the LHC [3, 4]. RooFit aims to separate particle physics model building and fitting (the users’ goals) from their technical implementation and optimization in the back-end. In this paper, we outline our efforts to further optimize this back-end by automatically running parts of user models in parallel on multi-core machines. A major challenge is that RooFit allows users to define many different types of models, with different types of computational bottlenecks. Our automatic parallelization framework must then be flexible, while still reducing run time by at least an order of magnitude, preferably more. We have performed extensive benchmarks and identified at least three bottlenecks that will benefit from parallelization. We designed a parallelization framework that allows us to parallelize likelihood minimization with high performance by splitting over partial derivatives in the minimizer. The basis of the framework is a task queue approach. Preliminary results show speed-ups of factor 2 to 20, depending on the exact model and parallelization strategy.