DOE OSTI · 1623358
Using OpenMP for HEP Framework Algorithm Scheduling [Slides]
Abstract
The OpenMP standard is the primary mechanism used at high performance computing facilities to allow intra-process parallelization. In contrast, many HEP specific software (such as CMSSW, GaudiHive, and ROOT) make use of Intel's Threading Building Blocks (TBB) library to accomplish the same goal. In this talk we will discuss our work to compare TBB and OpenMP when used for scheduling algorithms to be run by a HEP style data processing framework (i.e. running hundreds of interdependent algorithms at most once for each event read from the detector). This includes both scheduling of different algorithms to be run concurrently as well as scheduling concurrent work within one algorithm. As part of the discussion we present an overview of the OpenMP threading model. We also explain how we used OpenMP when creating a simplified HEP-like processing framework. Using that simplified framework, and a similar one written using TBB, we will present performance comparisons between TBB and different compiler versions of OpenMP.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Jones, Christopher D., Gartung, Patrick. 2019-11-04. Using OpenMP for HEP Framework Algorithm Scheduling [Slides]. https://doi.org/10.5281/zenodo.3598796
Cite the original work for its findings. Save a collection to share your selection of sources.