10.5281/zenodo.274334
https://zenodo.org/records/274334
oai:zenodo.org:274334
Ernst, Dominik
Dominik
Ernst
CERN openlab Summer Student
Pantaleo, Felice
Felice
Pantaleo
Summer Student Supervisor
Innocente, Vincenzo
Vincenzo
Innocente
Summer Student Supervisor
Performance studies on different accelerators using OpenCL
Zenodo
2016
CERN openlab summer student
2016-09-15
https://zenodo.org/communities/cernopenlab
Creative Commons Attribution 4.0 International
Project Specification
The High Luminosity LHC (HL-LHC) is a project to increase the luminosity of the Large Hadron Collider to 5*1034 cm-2 s-1. The CMS experiment is planning a major upgrade in order to cope with an expected average number of overlapping collisions per bunch crossing of 140. The dataset sizes will increase by several orders of magnitude and so will be the request for larger computing infrastructure. The complete exploitation of a machine capability is desirable, if not a requirement, that should anticipate a request for new hardware resources to the funding agencies. Furthermore, energy consumption for computing is becoming more and more an important voice into European data center's budget. The exploitation of Intel integrated accelerators like graphics processors or FPGAs, which are and will be part of our machines, will allow us to achieve much higher energy efficiency and higher performance. Furthermore, MIMD architectures like Kalray's Massively Parallel Processor Array could prove useful as embedded solutions in real-time environments like the experiment trigger farms. All these accelerators can be programmed using OpenCL. The aim of the project is to study the performance and the power efficiency of these accelerators when executing some kernels which are part of the reconstruction of CMS experiment events using the CMS software framework.
Abstract
This report introduces the OpenCL API and programming language and describes implementations using OpenCL of several kernels used for particle track reconstruction in the CMS software framework. The first part are kernels for construction and search in the context of a k-d tree data structure. The second part is a set of kernels for building possible tracks out of pairs of hits in the silicon tracker. Several OpenCL platforms are tested and benchmarked.