A programming framework for data streaming on the Xeon Phi
CERN, Physics Department, Geneva, Switzerland
Journal of Physics: Conference Series, Volume 898, Track 5: Software Development, 2017
@inproceedings{chapeland2017programming,
title={A programming framework for data streaming on the Xeon Phi},
author={Chapeland, S and ALICE Collaboration and others},
booktitle={Journal of Physics: Conference Series},
volume={898},
number={7},
pages={072007},
year={2017},
organization={IOP Publishing}
}
ALICE (A Large Ion Collider Experiment) is the dedicated heavy-ion detector studying the physics of strongly interacting matter and the quark-gluon plasma at the CERN LHC (Large Hadron Collider). After the second long shut-down of the LHC, the ALICE detector will be upgraded to cope with an interaction rate of 50 kHz in Pb-Pb collisions, producing in the online computing system (O2) a sustained throughput of 3.4 TB/s. This data will be processed on the fly so that the stream to permanent storage does not exceed 90 GB/s peak, the raw data being discarded. In the context of assessing different computing platforms for the O2 system, we have developed a framework for the Intel Xeon Phi processors (MIC). It provides the components to build a processing pipeline streaming the data from the PC memory to a pool of permanent threads running on the MIC, and back to the host after processing. It is based on explicit offloading mechanisms (data transfer, asynchronous tasks) and basic building blocks (FIFOs, memory pools, C++11 threads). The user only needs to implement the processing method to be run on the MIC. We present in this paper the architecture, implementation, and performance of this system.
December 7, 2017 by hgpu