Cargando…
High energy electromagnetic particle transportation on the GPU
We present massively parallel high energy electromagnetic particle transportation through a finely segmented detector on a Graphics Processing Unit (GPU). Simulating events of energetic particle decay in a general-purpose high energy physics (HEP) detector requires intensive computing resources, due...
Autores principales: | , , , , , |
---|---|
Lenguaje: | eng |
Publicado: |
2014
|
Materias: | |
Acceso en línea: | https://dx.doi.org/10.1088/1742-6596/513/5/052013 http://cds.cern.ch/record/2026345 |
_version_ | 1780947352361631744 |
---|---|
author | Canal, P Elvira, D Jun, S Y Kowalkowski, J Paterno, M Apostolakis, J |
author_facet | Canal, P Elvira, D Jun, S Y Kowalkowski, J Paterno, M Apostolakis, J |
author_sort | Canal, P |
collection | CERN |
description | We present massively parallel high energy electromagnetic particle transportation through a finely segmented detector on a Graphics Processing Unit (GPU). Simulating events of energetic particle decay in a general-purpose high energy physics (HEP) detector requires intensive computing resources, due to the complexity of the geometry as well as physics processes applied to particles copiously produced by primary collisions and secondary interactions. The recent advent of hardware architectures of many-core or accelerated processors provides the variety of concurrent programming models applicable not only for the high performance parallel computing, but also for the conventional computing intensive application such as the HEP detector simulation. The components of our prototype are a transportation process under a non-uniform magnetic field, geometry navigation with a set of solid shapes and materials, electromagnetic physics processes for electrons and photons, and an interface to a framework that dispatches bundles of tracks in a highly vectorized manner optimizing for spatial locality and throughput. Core algorithms and methods are excerpted from the Geant4 toolkit, and are modified and optimized for the GPU application. Program kernels written in C/C++ are designed to be compatible with CUDA and OpenCL and with the aim to be generic enough for easy porting to future programming models and hardware architectures. To improve throughput by overlapping data transfers with kernel execution, multiple CUDA streams are used. Issues with floating point accuracy, random numbers generation, data structure, kernel divergences and register spills are also considered. Performance evaluation for the relative speedup compared to the corresponding sequential execution on CPU is presented as well. |
id | oai-inspirehep.net-1302138 |
institution | Organización Europea para la Investigación Nuclear |
language | eng |
publishDate | 2014 |
record_format | invenio |
spelling | oai-inspirehep.net-13021382022-08-17T13:29:09Zdoi:10.1088/1742-6596/513/5/052013http://cds.cern.ch/record/2026345engCanal, PElvira, DJun, S YKowalkowski, JPaterno, MApostolakis, JHigh energy electromagnetic particle transportation on the GPUComputing and ComputersWe present massively parallel high energy electromagnetic particle transportation through a finely segmented detector on a Graphics Processing Unit (GPU). Simulating events of energetic particle decay in a general-purpose high energy physics (HEP) detector requires intensive computing resources, due to the complexity of the geometry as well as physics processes applied to particles copiously produced by primary collisions and secondary interactions. The recent advent of hardware architectures of many-core or accelerated processors provides the variety of concurrent programming models applicable not only for the high performance parallel computing, but also for the conventional computing intensive application such as the HEP detector simulation. The components of our prototype are a transportation process under a non-uniform magnetic field, geometry navigation with a set of solid shapes and materials, electromagnetic physics processes for electrons and photons, and an interface to a framework that dispatches bundles of tracks in a highly vectorized manner optimizing for spatial locality and throughput. Core algorithms and methods are excerpted from the Geant4 toolkit, and are modified and optimized for the GPU application. Program kernels written in C/C++ are designed to be compatible with CUDA and OpenCL and with the aim to be generic enough for easy porting to future programming models and hardware architectures. To improve throughput by overlapping data transfers with kernel execution, multiple CUDA streams are used. Issues with floating point accuracy, random numbers generation, data structure, kernel divergences and register spills are also considered. Performance evaluation for the relative speedup compared to the corresponding sequential execution on CPU is presented as well.FERMILAB-CONF-14-210-CDoai:inspirehep.net:13021382014 |
spellingShingle | Computing and Computers Canal, P Elvira, D Jun, S Y Kowalkowski, J Paterno, M Apostolakis, J High energy electromagnetic particle transportation on the GPU |
title | High energy electromagnetic particle transportation on the GPU |
title_full | High energy electromagnetic particle transportation on the GPU |
title_fullStr | High energy electromagnetic particle transportation on the GPU |
title_full_unstemmed | High energy electromagnetic particle transportation on the GPU |
title_short | High energy electromagnetic particle transportation on the GPU |
title_sort | high energy electromagnetic particle transportation on the gpu |
topic | Computing and Computers |
url | https://dx.doi.org/10.1088/1742-6596/513/5/052013 http://cds.cern.ch/record/2026345 |
work_keys_str_mv | AT canalp highenergyelectromagneticparticletransportationonthegpu AT elvirad highenergyelectromagneticparticletransportationonthegpu AT junsy highenergyelectromagneticparticletransportationonthegpu AT kowalkowskij highenergyelectromagneticparticletransportationonthegpu AT paternom highenergyelectromagneticparticletransportationonthegpu AT apostolakisj highenergyelectromagneticparticletransportationonthegpu |