CMS tracking parallelization

Introduction

One component of the CMS reconstruction software is the tracking. Its aim is to build the tracks of the charged particles starting from energy depositions in the silicon detector. Tracking is the most computing intensive part of the CMS reconstruction: about the half of an average reconstruction job is to be accounted to it.

Goal

This goal of this demonstrator is to parallelize the CMS track reconstruction.

Progress

The first step of tracking is the track seeding, which provides the input to the track building starting with hits in the CMS pixel detector. Processing proton-proton collision events in presence of ~30 pileup interactions, the seeding alone is responsible for about ~10% of the overall reconstruction time. A tbb implementation of a parallel seeding was provided and a proposal to integrate it into the CMSSW software framework was made. Excellent scaling is achieved at the price of a very little memory overhead (2MB per thread). Several insights about the overall thread safety of the CMSSW code were gained and solutions to improve the thread unsafe portions were successfully put in place. In addition, a thorough validation of the results obtained with the parallelized implementation with respect to the original serial one was carried out. The reconstructed tracks are exactly identical, bit by bit.

A natural second step would be represented by the parallelization of the track building. Work in this direction is ongoing.

 

 

Presentations

  1. Status and future plans for software technology demonstrators, T. Hauth, October 10th 2012
  2. Initial results with TBB technology for track seeding in CMS, T. Hauth, March 28th, 2012

Related Topics

  1. Performance tools, L. Tuura, February 29th, 2012
  2. Clang static code analysis: Detecting problematic constructs for multi-threaded processing, T. Hauth, June 20th, 2012