Cargando…

Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN

The ATLAS experiment is observing proton-proton collisions delivered by the LHC accelerator at a centre of mass energy of 7 TeV. The ATLAS Trigger and Data Acquisition (TDAQ) system selects interesting events on-line in a three-level trigger system in order to store them at a budgeted rate of severa...

Descripción completa

Detalles Bibliográficos
Autores principales: Colombo, T, Vandelli, W
Lenguaje:eng
Publicado: 2012
Materias:
Acceso en línea:http://cds.cern.ch/record/1448614
_version_ 1780924863740903424
author Colombo, T
Vandelli, W
author_facet Colombo, T
Vandelli, W
author_sort Colombo, T
collection CERN
description The ATLAS experiment is observing proton-proton collisions delivered by the LHC accelerator at a centre of mass energy of 7 TeV. The ATLAS Trigger and Data Acquisition (TDAQ) system selects interesting events on-line in a three-level trigger system in order to store them at a budgeted rate of several hundred Hz, for an average event size of ~1.2 MB. This paper focuses on the TDAQ data-logging system and in particular on the implementation and performance of a novel SW design, reporting on the effort of exploiting the full power of recently installed multi-core hardware. In this respect, the main challenge presented by the data-logging workload is the conflict between the largely parallel nature of the event processing, especially the recently introduced on-line event-compression, and the constraint of sequential file writing and checksum evaluation. This is furtherly complicated by the necessity of operating in a fully data-driven mode, to cope with continuously evolving trigger and detector configurations. The novel SW design is based on a thread-pool, implemented in C++ using modern parallel programming tools and techniques, as provided by libraries like TBB(1) and Boost(2). Lockless patterns, atomic instructions and concurrent containers have been employed to provide an efficient implementation able to cope with the above requirements. In this paper we report on the design of the new ATLAS on-line storage software. In particular we will discuss our development experience using recent concurrency-oriented libraries. Finally we will show the new system performance with respect to the old, single-threaded software design. (1) http://threadingbuildingblocks.org/ (2) http://www.boost.org/
id cern-1448614
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2012
record_format invenio
spelling cern-14486142019-09-30T06:29:59Zhttp://cds.cern.ch/record/1448614engColombo, TVandelli, WExperience with highly-parallel software for the storage system of the ATLAS Experiment at CERNDetectors and Experimental TechniquesThe ATLAS experiment is observing proton-proton collisions delivered by the LHC accelerator at a centre of mass energy of 7 TeV. The ATLAS Trigger and Data Acquisition (TDAQ) system selects interesting events on-line in a three-level trigger system in order to store them at a budgeted rate of several hundred Hz, for an average event size of ~1.2 MB. This paper focuses on the TDAQ data-logging system and in particular on the implementation and performance of a novel SW design, reporting on the effort of exploiting the full power of recently installed multi-core hardware. In this respect, the main challenge presented by the data-logging workload is the conflict between the largely parallel nature of the event processing, especially the recently introduced on-line event-compression, and the constraint of sequential file writing and checksum evaluation. This is furtherly complicated by the necessity of operating in a fully data-driven mode, to cope with continuously evolving trigger and detector configurations. The novel SW design is based on a thread-pool, implemented in C++ using modern parallel programming tools and techniques, as provided by libraries like TBB(1) and Boost(2). Lockless patterns, atomic instructions and concurrent containers have been employed to provide an efficient implementation able to cope with the above requirements. In this paper we report on the design of the new ATLAS on-line storage software. In particular we will discuss our development experience using recent concurrency-oriented libraries. Finally we will show the new system performance with respect to the old, single-threaded software design. (1) http://threadingbuildingblocks.org/ (2) http://www.boost.org/ATL-DAQ-SLIDE-2012-213oai:cds.cern.ch:14486142012-05-15
spellingShingle Detectors and Experimental Techniques
Colombo, T
Vandelli, W
Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN
title Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN
title_full Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN
title_fullStr Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN
title_full_unstemmed Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN
title_short Experience with highly-parallel software for the storage system of the ATLAS Experiment at CERN
title_sort experience with highly-parallel software for the storage system of the atlas experiment at cern
topic Detectors and Experimental Techniques
url http://cds.cern.ch/record/1448614
work_keys_str_mv AT colombot experiencewithhighlyparallelsoftwareforthestoragesystemoftheatlasexperimentatcern
AT vandelliw experiencewithhighlyparallelsoftwareforthestoragesystemoftheatlasexperimentatcern