The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of part... more The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of particles with matter) has been designed to offer to a generic user the ability to describe the geometrical structure of a detector in a very natural way, and allowing an efficient propagation of particles in the geometrical detector model. Advanced techniques for optimizing tracking in
The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of part... more The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of particles with matter) has been designed to offer to a generic user the ability to describe the geometrical structure of a detector in a very natural way, and allowing an efficient propagation of particles in the geometrical detector model. Advanced techniques for optimizing tracking in
Feed-Forward Neural Networks have shown to be a useful tool for the automatic classification of e... more Feed-Forward Neural Networks have shown to be a useful tool for the automatic classification of events in High Energy Physics. A shortcoming of the method is anyway given by the large value of simulated events to be used for training the classifier. In this paper, we describe an alternative Neural Network architecture that allows a substantial reduction of the CPU time spent in the training phase. This architecture has been tested on a complex problem, such as the classification of the hadronic decays of the Z0, and its performance has been compared with that of a Feed-Forward Neural Network.
Since its erliest years of R&D, the Geant4 simulation toolkit has been developed following softwa... more Since its erliest years of R&D, the Geant4 simulation toolkit has been developed following software process standards which dictated the overall evolution of the project. The complexity of the software involved, the wide areas of application of the software product, the huge amount of code and Category complexity, the size and distributed nature of the Collaboration itself are all ingredients which involve and correlate together a wide variety of software processes. Although in "production" and available to the public since December 1998, the Geant4 software product includes Category Domains which are still under active development. Therefore they require different treatment also in terms of improvement of the development cycle, system testing and user support. This article is meant to describe some of the software processes as they are applied in Geant4 for both development, testing and maintenance of the software.
IEEE Symposium Conference Record Nuclear Science 2004.
The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of part... more The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of particles with matter) is a key component of the Geant4 software. It offers the ability to describe the geometrical structure of a detector in a natural way, and has been designed for allowing efficient propagation of particles in the geometrical detector model and exploit at the best the features provided by the Geant4 simulation toolkit. Advanced techniques for optimizing tracking in the geometrical model have been seriously taken into consideration in the design, both in order to optimize the run-time performance and reduce the physical memory consumption when dealing with complex geometrical setups. A great variety of geometrical shapes are defined, including the possibility of combining them with Boolean operations to achieve nearly any possible detector geometry configuration. The major concepts of the Geant4 geometry modeler are here reviewed, with emphasis on recent features introduced in the last releases of the software.
The BaBar experiment has in place since 1995 a software release system (SRT Software Release Tool... more The BaBar experiment has in place since 1995 a software release system (SRT Software Release Tools) based on CVS (Concurrent Version System) which is in common for all the software developed for the experiment, online or offline, simulation or reconstruction. A software release is a snapshot of all BaBar code (online, offline, utilities, scripts, makefiles, etc.). This set of code is tested to work together, and is indexed by a release number (e.g., 6.8.2) so a user can refer to a particular release and get reproducible results. A release will involve particular versions of packages. A package generally consists of a set of code for a particular task, together with a GNUmakefile, scripts and documentation. All BaBar software is maintained in AFS (Andrew File System) directories, so the code is accessible worldwide within the Collaboration. The combination SRT, CVS, AFS, has demonstrated to be a valid, powerful and efficient way of organizing the software infrastructure of a modern HEP experiment with collaborating Institutes distributed worldwide, both in a development and production phase.
Detector simulation is a key component for studies on prospective future high-energy colliders, t... more Detector simulation is a key component for studies on prospective future high-energy colliders, the design, optimization, testing and operation of particle physics experiments, and the analysis of the data collected to perform physics measurements. This review starts from the current state of the art technology applied to detector simulation in high-energy physics and elaborates on the evolution of software tools developed to address the challenges posed by future accelerator programs beyond the HL-LHC era, into the 2030–2050 period. New accelerator, detector, and computing technologies set the stage for an exercise in how detector simulation will serve the needs of the high-energy physics programs of the mid 21st century, and its potential impact on other research domains.
The Geant-Vector prototype is an effort to address the demand for increased performance in HEP ex... more The Geant-Vector prototype is an effort to address the demand for increased performance in HEP experiment simulation software. By reorganizing particle transport towards a vectorcentric data layout, the projects aims for efficient use of SIMD instructions on modern CPUs, as well as co-processors such as GPUs and Xeon Phi.
The future High Energy Physics experiments, based on upgraded or next generation particle acceler... more The future High Energy Physics experiments, based on upgraded or next generation particle accelerators with higher luminosity and energy, will put more stringent demands on the simulation as far as precision and speed are concerned. In particular, matching the statistical uncertainties of the collected experimental data, will require the simulation toolkits to be more CPU-efficient, while keeping the same, if not higher, precision of the physics. On the other hand, the computing architectures have evolved considerably opening new opportunities for code improvements, based on parallelism and use of compute accelerators. In this talk we present the R&D activities to cope with the new HEP computing challenges, taking place in the context of the Geant4 simulation toolkit. We first discuss the general scope and plan of this initiative and we introduce the different directions that are being explored with the potential benefits they can bring. The second part is focused on a few concrete ...
VecGeom is a geometry modeller library with hit-detection features as needed by particle detector... more VecGeom is a geometry modeller library with hit-detection features as needed by particle detector simulation at the LHC and beyond. It was incubated by a Geant-R&D initiative and the motivation to combine the code of Geant4 and ROOT/TGeo into a single, better maintainable piece of software within the EU-AIDA program. So far, VecGeom is mainly used by LHC experiments as a geometry primitive library called from Geant4, where it was shown to provide 7–12% reduction in CPU time due to its faster algorithms for complex primitives [1]. In this contribution, we discuss how VecGeom can be used as the navigating library in Geant4 in order to benefit from both its fast geometry primitives as well as its vectorised navigation module. We investigate whether this integration provides the speed improvements expected, in addition to the gain obtained from geometry primitives. We discuss and benchmark the application of a VecGeomnavigator plugin to Geant4 for a simplified geometry and show paths to...
SIMD acceleration can potentially boost by factors the application throughput. Achieving efficien... more SIMD acceleration can potentially boost by factors the application throughput. Achieving efficient SIMD vectorization for scalar code with complex data flow and branching logic, goes however way beyond breaking some loop dependencies and relying on the compiler. Since the refactoring effort scales with the number of lines of code, it is important to understand what kind of performance gains can be expected in such complex cases. We started to investigate a couple of years ago a top to bottom vectorization approach to particle transport simulation. Percolating vector data to algorithms was mandatory since not all the components can internally vectorize. Vectorizing low-level algorithms is certainly necessary, but not sufficient to achieve relevant SIMD gains. In addition, the overheads for maintaining the concurrent vector data flow and copy data have to be minimized. In the context of a vectorization R&D for simulation we developed a framework to allow different categories of scalar...
VecGeom [1] is a multi-purpose geometry library targeting the optimisation of the 3D-solids’ algo... more VecGeom [1] is a multi-purpose geometry library targeting the optimisation of the 3D-solids’ algorithms used extensively in particle transport and tracking applications. The implementations of these algorithms are templated on the input data type and are vectorised based on the VecCore [2] abstraction library in case of multiple inputs in a SIMD vector. This provides additional performance for applications supporting a multi-particle flow, such as the GeantV [3] prototype. VecGeom allows also scalar queries for all the supported solids, an option that started being used in Geant4 [4] since the release 10.2, as optional replacement of the geometry functionality provided by the native Geant4 solids. In single particle mode, VecGeom can still issue SIMD instructions by vectorizing the geometry algorithms featuring loops over internal data structures. This approach has proven to bring very large benefits for the tessellated solids represented in terms of triangular facets. To expose mor...
The development of the GeantV Electromagnetic (EM) physics package has evolved following two nece... more The development of the GeantV Electromagnetic (EM) physics package has evolved following two necessary paths towards code modernization. A first phase required the revision of the main electromagnetic physics models and their implementation. The main objectives were to improve their accuracy, extend them to the new high-energy frontier posed by the Future Circular Collider (FCC) programme and allow a better adaptation to a multi-particle flow. Most of the EM physics models in GeantV have been reviewed from theoretical perspective and rewritten with vector-friendly implementations, being now available in scalar mode in the alpha release. The second phase consists of a thorough investigation on the possibility to vectorise the most CPU-intensive physics code parts, such as final state sampling. We have shown the feasibility of implementing electromagnetic physics models that take advantage of SIMD/SIMT architectures, thus obtaining gains in performance. After this phase, the time has ...
Particle physics has an ambitious and broad experimental programme for the coming decades. This p... more Particle physics has an ambitious and broad experimental programme for the coming decades. This programme requires large investments in detector hardware, either to build new facilities and experiments, or to upgrade existing ones. Similarly, it requires commensurate investment in the R&D of software to acquire, manage, process, and analyse the shear amounts of data to be recorded. In planning for the HL-LHC in particular, it is critical that all of the collaborating stakeholders agree on the software goals and priorities, and that the efforts complement each other. In this spirit, this white paper describes the R&D activities required to prepare for this software upgrade.
GEANT4 is a detector simulation toolkit designed for the new generation of High Energy Physics ex... more GEANT4 is a detector simulation toolkit designed for the new generation of High Energy Physics experiments as well as for nuclear physics, astrophysics, medical and space applications and radiation background studies. An overview of its main features is presented, with emphasis on the most recent enhancements and a selection of results from Geant4-based simulations in various experimental environments.
The Anaphe project is an ongoing effort to provide an Object Oriented software environment for da... more The Anaphe project is an ongoing effort to provide an Object Oriented software environment for data analysis in HENP experiments. A range of commercial and public domain libraries is used to cover basic functionalities; on top of these libraries a set of HENP-specific C++ class libraries for histogram management, fitting, plotting and ntuple-like data analysis has been developed. In order
A classifier based on a Feed-Forward Neural Network has been used for separating a sample of abou... more A classifier based on a Feed-Forward Neural Network has been used for separating a sample of about 123,500 selected hadronic decays of the Z0, collected by DELPHI during 1991, into three classes according to the flavour of the original quark pair: [Formula: see text] (unresolved), [Formula: see text] and [Formula: see text] The classification has been used to compute the partial widths of the Z0 into b and C quark pairs.
SNA + MC 2013 - Joint International Conference on Supercomputing in Nuclear Applications + Monte Carlo, 2014
GEANT4-MT is the multi-threaded version of the GEANT4 particle transport code.(1, 2) The key goal... more GEANT4-MT is the multi-threaded version of the GEANT4 particle transport code.(1, 2) The key goals for the design of GEANT4-MT have been a) the need to reduce the memory footprint of the multi-threaded application compared to the use of separate jobs and processes; b) to create an easy migration of the existing applications; and c) to use efficiently many threads or cores, by scaling up to tens and potentially hundreds of workers. The first public release of a GEANT4-MT prototype was made in 2011. We report on the revision of GEANT4-MT for inclusion in the production-level release scheduled for end of 2013. This has involved significant re-engineering of the prototype in order to incorporate it into the main GEANT4 development line, and the porting of GEANT4-MT threading code to additional platforms. In order to make the porting of applications as simple as possible, refinements addressed the needs of standalone applications. Further adaptations were created to improve the fit with ...
The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of part... more The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of particles with matter) has been designed to offer to a generic user the ability to describe the geometrical structure of a detector in a very natural way, and allowing an efficient propagation of particles in the geometrical detector model. Advanced techniques for optimizing tracking in
The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of part... more The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of particles with matter) has been designed to offer to a generic user the ability to describe the geometrical structure of a detector in a very natural way, and allowing an efficient propagation of particles in the geometrical detector model. Advanced techniques for optimizing tracking in
Feed-Forward Neural Networks have shown to be a useful tool for the automatic classification of e... more Feed-Forward Neural Networks have shown to be a useful tool for the automatic classification of events in High Energy Physics. A shortcoming of the method is anyway given by the large value of simulated events to be used for training the classifier. In this paper, we describe an alternative Neural Network architecture that allows a substantial reduction of the CPU time spent in the training phase. This architecture has been tested on a complex problem, such as the classification of the hadronic decays of the Z0, and its performance has been compared with that of a Feed-Forward Neural Network.
Since its erliest years of R&D, the Geant4 simulation toolkit has been developed following softwa... more Since its erliest years of R&D, the Geant4 simulation toolkit has been developed following software process standards which dictated the overall evolution of the project. The complexity of the software involved, the wide areas of application of the software product, the huge amount of code and Category complexity, the size and distributed nature of the Collaboration itself are all ingredients which involve and correlate together a wide variety of software processes. Although in "production" and available to the public since December 1998, the Geant4 software product includes Category Domains which are still under active development. Therefore they require different treatment also in terms of improvement of the development cycle, system testing and user support. This article is meant to describe some of the software processes as they are applied in Geant4 for both development, testing and maintenance of the software.
IEEE Symposium Conference Record Nuclear Science 2004.
The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of part... more The Geometry modeler in Geant4 (a software toolkit for the simulation of the interactions of particles with matter) is a key component of the Geant4 software. It offers the ability to describe the geometrical structure of a detector in a natural way, and has been designed for allowing efficient propagation of particles in the geometrical detector model and exploit at the best the features provided by the Geant4 simulation toolkit. Advanced techniques for optimizing tracking in the geometrical model have been seriously taken into consideration in the design, both in order to optimize the run-time performance and reduce the physical memory consumption when dealing with complex geometrical setups. A great variety of geometrical shapes are defined, including the possibility of combining them with Boolean operations to achieve nearly any possible detector geometry configuration. The major concepts of the Geant4 geometry modeler are here reviewed, with emphasis on recent features introduced in the last releases of the software.
The BaBar experiment has in place since 1995 a software release system (SRT Software Release Tool... more The BaBar experiment has in place since 1995 a software release system (SRT Software Release Tools) based on CVS (Concurrent Version System) which is in common for all the software developed for the experiment, online or offline, simulation or reconstruction. A software release is a snapshot of all BaBar code (online, offline, utilities, scripts, makefiles, etc.). This set of code is tested to work together, and is indexed by a release number (e.g., 6.8.2) so a user can refer to a particular release and get reproducible results. A release will involve particular versions of packages. A package generally consists of a set of code for a particular task, together with a GNUmakefile, scripts and documentation. All BaBar software is maintained in AFS (Andrew File System) directories, so the code is accessible worldwide within the Collaboration. The combination SRT, CVS, AFS, has demonstrated to be a valid, powerful and efficient way of organizing the software infrastructure of a modern HEP experiment with collaborating Institutes distributed worldwide, both in a development and production phase.
Detector simulation is a key component for studies on prospective future high-energy colliders, t... more Detector simulation is a key component for studies on prospective future high-energy colliders, the design, optimization, testing and operation of particle physics experiments, and the analysis of the data collected to perform physics measurements. This review starts from the current state of the art technology applied to detector simulation in high-energy physics and elaborates on the evolution of software tools developed to address the challenges posed by future accelerator programs beyond the HL-LHC era, into the 2030–2050 period. New accelerator, detector, and computing technologies set the stage for an exercise in how detector simulation will serve the needs of the high-energy physics programs of the mid 21st century, and its potential impact on other research domains.
The Geant-Vector prototype is an effort to address the demand for increased performance in HEP ex... more The Geant-Vector prototype is an effort to address the demand for increased performance in HEP experiment simulation software. By reorganizing particle transport towards a vectorcentric data layout, the projects aims for efficient use of SIMD instructions on modern CPUs, as well as co-processors such as GPUs and Xeon Phi.
The future High Energy Physics experiments, based on upgraded or next generation particle acceler... more The future High Energy Physics experiments, based on upgraded or next generation particle accelerators with higher luminosity and energy, will put more stringent demands on the simulation as far as precision and speed are concerned. In particular, matching the statistical uncertainties of the collected experimental data, will require the simulation toolkits to be more CPU-efficient, while keeping the same, if not higher, precision of the physics. On the other hand, the computing architectures have evolved considerably opening new opportunities for code improvements, based on parallelism and use of compute accelerators. In this talk we present the R&D activities to cope with the new HEP computing challenges, taking place in the context of the Geant4 simulation toolkit. We first discuss the general scope and plan of this initiative and we introduce the different directions that are being explored with the potential benefits they can bring. The second part is focused on a few concrete ...
VecGeom is a geometry modeller library with hit-detection features as needed by particle detector... more VecGeom is a geometry modeller library with hit-detection features as needed by particle detector simulation at the LHC and beyond. It was incubated by a Geant-R&D initiative and the motivation to combine the code of Geant4 and ROOT/TGeo into a single, better maintainable piece of software within the EU-AIDA program. So far, VecGeom is mainly used by LHC experiments as a geometry primitive library called from Geant4, where it was shown to provide 7–12% reduction in CPU time due to its faster algorithms for complex primitives [1]. In this contribution, we discuss how VecGeom can be used as the navigating library in Geant4 in order to benefit from both its fast geometry primitives as well as its vectorised navigation module. We investigate whether this integration provides the speed improvements expected, in addition to the gain obtained from geometry primitives. We discuss and benchmark the application of a VecGeomnavigator plugin to Geant4 for a simplified geometry and show paths to...
SIMD acceleration can potentially boost by factors the application throughput. Achieving efficien... more SIMD acceleration can potentially boost by factors the application throughput. Achieving efficient SIMD vectorization for scalar code with complex data flow and branching logic, goes however way beyond breaking some loop dependencies and relying on the compiler. Since the refactoring effort scales with the number of lines of code, it is important to understand what kind of performance gains can be expected in such complex cases. We started to investigate a couple of years ago a top to bottom vectorization approach to particle transport simulation. Percolating vector data to algorithms was mandatory since not all the components can internally vectorize. Vectorizing low-level algorithms is certainly necessary, but not sufficient to achieve relevant SIMD gains. In addition, the overheads for maintaining the concurrent vector data flow and copy data have to be minimized. In the context of a vectorization R&D for simulation we developed a framework to allow different categories of scalar...
VecGeom [1] is a multi-purpose geometry library targeting the optimisation of the 3D-solids’ algo... more VecGeom [1] is a multi-purpose geometry library targeting the optimisation of the 3D-solids’ algorithms used extensively in particle transport and tracking applications. The implementations of these algorithms are templated on the input data type and are vectorised based on the VecCore [2] abstraction library in case of multiple inputs in a SIMD vector. This provides additional performance for applications supporting a multi-particle flow, such as the GeantV [3] prototype. VecGeom allows also scalar queries for all the supported solids, an option that started being used in Geant4 [4] since the release 10.2, as optional replacement of the geometry functionality provided by the native Geant4 solids. In single particle mode, VecGeom can still issue SIMD instructions by vectorizing the geometry algorithms featuring loops over internal data structures. This approach has proven to bring very large benefits for the tessellated solids represented in terms of triangular facets. To expose mor...
The development of the GeantV Electromagnetic (EM) physics package has evolved following two nece... more The development of the GeantV Electromagnetic (EM) physics package has evolved following two necessary paths towards code modernization. A first phase required the revision of the main electromagnetic physics models and their implementation. The main objectives were to improve their accuracy, extend them to the new high-energy frontier posed by the Future Circular Collider (FCC) programme and allow a better adaptation to a multi-particle flow. Most of the EM physics models in GeantV have been reviewed from theoretical perspective and rewritten with vector-friendly implementations, being now available in scalar mode in the alpha release. The second phase consists of a thorough investigation on the possibility to vectorise the most CPU-intensive physics code parts, such as final state sampling. We have shown the feasibility of implementing electromagnetic physics models that take advantage of SIMD/SIMT architectures, thus obtaining gains in performance. After this phase, the time has ...
Particle physics has an ambitious and broad experimental programme for the coming decades. This p... more Particle physics has an ambitious and broad experimental programme for the coming decades. This programme requires large investments in detector hardware, either to build new facilities and experiments, or to upgrade existing ones. Similarly, it requires commensurate investment in the R&D of software to acquire, manage, process, and analyse the shear amounts of data to be recorded. In planning for the HL-LHC in particular, it is critical that all of the collaborating stakeholders agree on the software goals and priorities, and that the efforts complement each other. In this spirit, this white paper describes the R&D activities required to prepare for this software upgrade.
GEANT4 is a detector simulation toolkit designed for the new generation of High Energy Physics ex... more GEANT4 is a detector simulation toolkit designed for the new generation of High Energy Physics experiments as well as for nuclear physics, astrophysics, medical and space applications and radiation background studies. An overview of its main features is presented, with emphasis on the most recent enhancements and a selection of results from Geant4-based simulations in various experimental environments.
The Anaphe project is an ongoing effort to provide an Object Oriented software environment for da... more The Anaphe project is an ongoing effort to provide an Object Oriented software environment for data analysis in HENP experiments. A range of commercial and public domain libraries is used to cover basic functionalities; on top of these libraries a set of HENP-specific C++ class libraries for histogram management, fitting, plotting and ntuple-like data analysis has been developed. In order
A classifier based on a Feed-Forward Neural Network has been used for separating a sample of abou... more A classifier based on a Feed-Forward Neural Network has been used for separating a sample of about 123,500 selected hadronic decays of the Z0, collected by DELPHI during 1991, into three classes according to the flavour of the original quark pair: [Formula: see text] (unresolved), [Formula: see text] and [Formula: see text] The classification has been used to compute the partial widths of the Z0 into b and C quark pairs.
SNA + MC 2013 - Joint International Conference on Supercomputing in Nuclear Applications + Monte Carlo, 2014
GEANT4-MT is the multi-threaded version of the GEANT4 particle transport code.(1, 2) The key goal... more GEANT4-MT is the multi-threaded version of the GEANT4 particle transport code.(1, 2) The key goals for the design of GEANT4-MT have been a) the need to reduce the memory footprint of the multi-threaded application compared to the use of separate jobs and processes; b) to create an easy migration of the existing applications; and c) to use efficiently many threads or cores, by scaling up to tens and potentially hundreds of workers. The first public release of a GEANT4-MT prototype was made in 2011. We report on the revision of GEANT4-MT for inclusion in the production-level release scheduled for end of 2013. This has involved significant re-engineering of the prototype in order to incorporate it into the main GEANT4 development line, and the porting of GEANT4-MT threading code to additional platforms. In order to make the porting of applications as simple as possible, refinements addressed the needs of standalone applications. Further adaptations were created to improve the fit with ...
Uploads
Papers by Gabriele Cosmo