Add support for SYCL alpaka backend to Patatrack Pixel Track reconstruction
Description
For CMS, Heterogeneous Computing is a powerful tool to face the computational challenges posed by the upgrades of the LHC, and will be used in production at the HLT during Run 3. In principle, to offload the computational work on non-CPU resources, while retaining their performance, different implementations of the same code are required. This would introduce code-duplication which is not sustainable in terms of maintainability and testability of the software. Performance Portability Libraries allow to write code once and run it on different architectures with close-to-native performance. During the LHC Run3 CMS experiment will use the Alpaka portability library to offload parallel computation to GPUs while keeping the ability to run the same code on CPUs. A standalone version of the CMS Patatrack reconstruction has been already ported in Alpaka supporting the CPU serial backend and the GPU CUDA backend. The goal of the project is to introduce support for Intel accelerator devices via the SYCL backend.
Expected Results
- Development of a small alpaka demonstrator that can compile for CPU, NVIDIA GPU, Intel accelerators
- Patatrack reconstruction work division can be configured to run efficiently on Intel hardware
- Patatrack reconstruction can be compiled and execute on Intel accelerators
Evaluation Task
Interested students please contact:
- Felice Pantaleo (CERN)
- Tony Di Pilato (CERN CASUS)
- Wahid Redjeb (CERN RWTH)
Technologies
- C++, Makefile, gcc, C++ smart pointers, C++ templates, bash shell scripting
Desirable Skills
- Experience with C++
- Experience with GNU Makefile
Mentors
- Felice Pantaleo (CERN)
- Tony Di Pilato (CASUS HZDR)
- Wahid Redjeb (CERN RWTH)
Links
Additional Information
- Difficulty level (low / medium / high): medium
- Duration: 175 hours
- Mentor availability: June-October