Cargando…

User-friendly parallelization of GAUDI applications with Python

GAUDI is a software framework in C++ used to build event data processing applications using a set of standard components with well-defined interfaces. Simulation, high-level trigger, reconstruction, and analysis programs used by several experiments are developed using GAUDI. These applications can b...

Descripción completa

Detalles Bibliográficos
Autores principales: Mato, P, Smith, E
Lenguaje:eng
Publicado: 2010
Materias:
Acceso en línea:https://dx.doi.org/10.1088/1742-6596/219/4/042015
http://cds.cern.ch/record/1269670
_version_ 1780920172972867584
author Mato, P
Smith, E
author_facet Mato, P
Smith, E
author_sort Mato, P
collection CERN
description GAUDI is a software framework in C++ used to build event data processing applications using a set of standard components with well-defined interfaces. Simulation, high-level trigger, reconstruction, and analysis programs used by several experiments are developed using GAUDI. These applications can be configured and driven by simple Python scripts. Given the fact that a considerable amount of existing software has been developed using serial methodology, and has existed in some cases for many years, implementation of parallelisation techniques at the framework level may offer a way of exploiting current multi-core technologies to maximize performance and reduce latencies without re-writing thousands/millions of lines of code. In the solution we have developed, the parallelization techniques are introduced to the high level Python scripts which configure and drive the applications, such that the core C++ application code requires no modification, and that end users need make only minimal changes to their scripts. The developed solution leverages from existing generic Python modules that support parallel processing. Naturally, the parallel version of a given program should produce results consistent with its serial execution. The evaluation of several prototypes incorporating various parallelization techniques are presented and discussed.
id cern-1269670
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2010
record_format invenio
spelling cern-12696702022-08-17T13:33:03Zdoi:10.1088/1742-6596/219/4/042015http://cds.cern.ch/record/1269670engMato, PSmith, EUser-friendly parallelization of GAUDI applications with PythonComputing and ComputersGAUDI is a software framework in C++ used to build event data processing applications using a set of standard components with well-defined interfaces. Simulation, high-level trigger, reconstruction, and analysis programs used by several experiments are developed using GAUDI. These applications can be configured and driven by simple Python scripts. Given the fact that a considerable amount of existing software has been developed using serial methodology, and has existed in some cases for many years, implementation of parallelisation techniques at the framework level may offer a way of exploiting current multi-core technologies to maximize performance and reduce latencies without re-writing thousands/millions of lines of code. In the solution we have developed, the parallelization techniques are introduced to the high level Python scripts which configure and drive the applications, such that the core C++ application code requires no modification, and that end users need make only minimal changes to their scripts. The developed solution leverages from existing generic Python modules that support parallel processing. Naturally, the parallel version of a given program should produce results consistent with its serial execution. The evaluation of several prototypes incorporating various parallelization techniques are presented and discussed.oai:cds.cern.ch:12696702010
spellingShingle Computing and Computers
Mato, P
Smith, E
User-friendly parallelization of GAUDI applications with Python
title User-friendly parallelization of GAUDI applications with Python
title_full User-friendly parallelization of GAUDI applications with Python
title_fullStr User-friendly parallelization of GAUDI applications with Python
title_full_unstemmed User-friendly parallelization of GAUDI applications with Python
title_short User-friendly parallelization of GAUDI applications with Python
title_sort user-friendly parallelization of gaudi applications with python
topic Computing and Computers
url https://dx.doi.org/10.1088/1742-6596/219/4/042015
http://cds.cern.ch/record/1269670
work_keys_str_mv AT matop userfriendlyparallelizationofgaudiapplicationswithpython
AT smithe userfriendlyparallelizationofgaudiapplicationswithpython