Cargando…

Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction

Chip-Multiprocessors are going to support massive parallelism by many additional physical and logical cores. Improving performance can no longer be obtained by increasing clock-frequency because the technical limits are almost reached. Instead, parallel execution must be used to gain performance. Re...

Descripción completa

Detalles Bibliográficos
Autores principales: Lohn, Stefan B, Dong, Xin, Carminati, Federico
Lenguaje:eng
Publicado: 2012
Materias:
Acceso en línea:https://dx.doi.org/10.1088/1742-6596/396/5/052049
http://cds.cern.ch/record/1515974
_version_ 1780928426191880192
author Lohn, Stefan B
Dong, Xin
Carminati, Federico
author_facet Lohn, Stefan B
Dong, Xin
Carminati, Federico
author_sort Lohn, Stefan B
collection CERN
description Chip-Multiprocessors are going to support massive parallelism by many additional physical and logical cores. Improving performance can no longer be obtained by increasing clock-frequency because the technical limits are almost reached. Instead, parallel execution must be used to gain performance. Resources like main memory, the cache hierarchy, bandwidth of the memory bus or links between cores and sockets are not going to be improved as fast. Hence, parallelism can only result into performance gains if the memory usage is optimized and the communication between threads is minimized. Besides concurrent programming has become a domain for experts. Implementing multi-threading is error prone and labor-intensive. A full reimplementation of the whole AliRoot source-code is unaffordable. This paper describes the effort to evaluate the adaption of AliRoot to the needs of multi-threading and to provide the capability of parallel processing by using a semi-automatic source-to-source transformation to address the problems as described before and to provide a straight-forward way of parallelization with almost no interference between threads. This makes the approach simple and reduces the required manual changes in the code. In a first step, unconditional thread-safety will be introduced to bring the original sequential and thread unaware source-code into the position of utilizing multi-threading. Afterwards further investigations have to be performed to point out candidates of classes that are useful to share amongst threads. Then in a second step, the transformation has to change the code to share these classes and finally to verify if there are anymore invalid interferences between threads.
id cern-1515974
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2012
record_format invenio
spelling cern-15159742022-08-17T13:24:46Zdoi:10.1088/1742-6596/396/5/052049http://cds.cern.ch/record/1515974engLohn, Stefan BDong, XinCarminati, FedericoUsing a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstructionComputing and ComputersChip-Multiprocessors are going to support massive parallelism by many additional physical and logical cores. Improving performance can no longer be obtained by increasing clock-frequency because the technical limits are almost reached. Instead, parallel execution must be used to gain performance. Resources like main memory, the cache hierarchy, bandwidth of the memory bus or links between cores and sockets are not going to be improved as fast. Hence, parallelism can only result into performance gains if the memory usage is optimized and the communication between threads is minimized. Besides concurrent programming has become a domain for experts. Implementing multi-threading is error prone and labor-intensive. A full reimplementation of the whole AliRoot source-code is unaffordable. This paper describes the effort to evaluate the adaption of AliRoot to the needs of multi-threading and to provide the capability of parallel processing by using a semi-automatic source-to-source transformation to address the problems as described before and to provide a straight-forward way of parallelization with almost no interference between threads. This makes the approach simple and reduces the required manual changes in the code. In a first step, unconditional thread-safety will be introduced to bring the original sequential and thread unaware source-code into the position of utilizing multi-threading. Afterwards further investigations have to be performed to point out candidates of classes that are useful to share amongst threads. Then in a second step, the transformation has to change the code to share these classes and finally to verify if there are anymore invalid interferences between threads.oai:cds.cern.ch:15159742012
spellingShingle Computing and Computers
Lohn, Stefan B
Dong, Xin
Carminati, Federico
Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
title Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
title_full Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
title_fullStr Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
title_full_unstemmed Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
title_short Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
title_sort using a source-to-source transformation to introduce multi-threading into the aliroot framework for a parallel event reconstruction
topic Computing and Computers
url https://dx.doi.org/10.1088/1742-6596/396/5/052049
http://cds.cern.ch/record/1515974
work_keys_str_mv AT lohnstefanb usingasourcetosourcetransformationtointroducemultithreadingintothealirootframeworkforaparalleleventreconstruction
AT dongxin usingasourcetosourcetransformationtointroducemultithreadingintothealirootframeworkforaparalleleventreconstruction
AT carminatifederico usingasourcetosourcetransformationtointroducemultithreadingintothealirootframeworkforaparalleleventreconstruction