会议论文详细信息
21st International Conference on Computing in High Energy and Nuclear Physics
Development of a Next Generation Concurrent Framework for the ATLAS Experiment
物理学;计算机科学
Calafiura, P.^1 ; Lampl, W.^2 ; Leggett, C.^1 ; Malon, D.^3 ; Stewart, G.^4 ; Wynne, B.^4
Lawrence Berkeley National Laboratory, 1 Cyclotron Rd, Berkeley
CA
94720, United States^1
CERN, Italy^2
Argonne National Laboratory, 9700 S. Cass Ave, Argonne
IL
60439, United States^3
Glasgow, United States^4
关键词: ATLAS experiment;    Memory consumption;    Multi-threading;    Performance Gain;    Programming models;    Reconstruction software;    Single-threaded;    Software frameworks;   
Others  :  https://iopscience.iop.org/article/10.1088/1742-6596/664/7/072031/pdf
DOI  :  10.1088/1742-6596/664/7/072031
学科分类:计算机科学(综合)
来源: IOP
PDF
【 摘 要 】
The ATLAS experiment has successfully used its Gaudi/Athena software framework for data taking and analysis during the first LHC run, with billions of events successfully processed. However, the design of Gaudi/Athena dates from early 2000 and the software and the physics code has been written using a single threaded, serial design. This programming model has increasing difficulty in exploiting the potential of current CPUs, which offer their best performance only through taking full advantage of multiple cores and wide vector registers. Future CPU evolution will intensify this trend, with core counts increasing and memory per core falling. With current memory consumption for 64 bit ATLAS reconstruction in a high luminosity environment approaching 4GB, it will become impossible to fully occupy all cores in a machine without exhausting available memory. However, since maximizing performance per watt will be a key metric, a mechanism must be found to use all cores as efficiently as possible. In this paper we report on our progress with a practical demonstration of the use of multithreading in the ATLAS reconstruction software, using the GaudiHive framework. We have expanded support to Calorimeter, Inner Detector, and Tracking code, discussing what changes were necessary in order to allow the serially designed ATLAS code to run, both to the framework and to the tools and algorithms used. We report on both the performance gains, and what general lessons were learned about the code patterns that had been employed in the software and which patterns were identified as particularly problematic for multi-threading. We also present our findings on implementing a hybrid multi-threaded / multi-process framework, to take advantage of the strengths of each type of concurrency, while avoiding some of their corresponding limitations.
【 预 览 】
附件列表
Files Size Format View
Development of a Next Generation Concurrent Framework for the ATLAS Experiment 2598KB PDF download
  文献评价指标  
  下载次数:8次 浏览次数:29次