OpenCL Tracking

Todo List

Last updated 11.2.2013

Task Responsible Status
Extract RECO hits and MC truth matching for efficiency and fake rate calculation Daniel in progress
Recheck ( Phi / Phi' ) plot from Tracking POG talk Daniel open
Recheck the gabs in the Phi plot from Tracking POG talk - probably tracks with missing hits -> fix selection Daniel open
Integrate Rieman fit in Triplet filter Daniel done
Compare runtime of OpenCL algorithm to some form of CMSSW tracking Daniel, Thomas to be discussed
Retune cut values - different cut values for different layer Daniel todo
Check whether the hit charge can be useful Thomas todo
Efficiency and Fake rate of the Triplet joining process Thomas todo
Check for conversion tracks, where will they be stored ? Thomas todo

Algorithms & Data Flow

Insert algoithm name, possible parameters and the necessary input and output data here.

Data Organzation / Pre-partioning

Hits

The most obvious and straight-forward organization of hit data is in buffers which hold only the hits of one detection layer ( 1,2,3 pixel layers ) Furthermore, individual buffers exist for the barrel and endcap region. A more fine-grained partioning is possible.

Contraints to reduce the number of initial Tracklets

Name Note Constraint Formula Detector Region
Compatiple Cluster Shape - -  
MaxCurvature constraint on \phi and dz depending on position in barrel    
Maxd\phi constraint of change in \phi at each layer   Barrel
Maxd\theta (\eta) constraint of change in \theta \eta at each layer   Endcap
InteractionPoint

extrapolate candidate to beam line to check whether physically possible

--> relaxed in a later iteration?

   
Overall Track Segmnet Length      

Compatible Cluster Shape

The Cluster shape of the local hit reconstruction can give an indication whether hits might belong to the same track. This information is already used in some CMSSW Seeding steps, but this information must be extracted after the RECO step. It is no available on SIM level.

Necessary Input Data:

  • Cluster Shape information of all three hits: find out how this is represented

MaxCurvature

Necessary Input Data:

  • Global position of all three hits

Maxd\phi

Necessary Input Data:

  • Global position of all three hits

Maxd\theta (\eta)

Amount of energy deposit in the hit

on the cluster level

Necessary Input Data:

  • Global position of all three hits

InteractionPoint

Depending on the sophistication of this check either the global origin (0,0,0) is assumed to be the interaction point or a user-defined point must be provided

Necessary Input Data:

  • Interaction Point in Global Coordinates
  • Already paremtrized curve to be able to extrapolate to the interaction point

Constraint Implementation

To keep the kernels small and branching-free, all constraints should be implemented in seperated kernels, as the constraints will run in sequence and not concurrently. Each constraint kernel will operate on an input list of possible tracklets and an output list of tracklets which have passed the constraint. For the first constraint kernel, not a tracklet list is used as input, but simply all hits in the region of interest. This kernel will create the first tracklet candidate list. The tracklet output list of constraint kernel can be the input for the next kernel. The tracklet list can also contain more detailed information ( like fitted parameters ) to be used by later constraint or combination kernels.

During development, dedicated buffers to hold the result of each kernel run can be employed to ease debugging. In release code, a double-buffer scheme can be employed to reuse only two buffers. Once all constraint kernels were run, the final tracklet list can be handed to the kernel which combines the available tracklets.

Track Segments merging

Once the initial set of track segments has been found, they must be merged to form the complete tracks. Multiple criterias are possible to check whether neighboring track segments belong to one track.

Name Note Constraint Formula Detector Region
Compatiple Direction in the x-z plane - -  
Compatible Curvature in the r-phi plane constraint on \phi and dz depending on position in barrel    
Shared Hits in the same region

Random Implementation Notes

  • the fastest Constraints should be applied first to shrink down the number of possible tracklet candidates before going to the more compute intensive Constraints
  • always keep in mind, that a kernel should be able to run on the data of many events at the same time !

Open Points

  • How to handle StripHits which are not confined in one dimension ( store also the error on the hit location and make the erro along the strip very large ? )
  • How to handle missing hits on tracks ( plot how many missing hits regular tracks have on average ) > tracks with missing hits can be recovered if the rest of the track has been found correctly. The missing tracklet can be recreated extrapolating to the missing hit

Related Work

Alice HLT:

http://ieeexplore.ieee.org/ielx5/23/5985592/05934702.pdf?tp=&arnumber=5934702&isnumber=5985592

CBM:

http://iopscience.iop.org/1742-6596/219/3/032048/pdf/1742-6596_219_3_032048.pdf

http://www-alt.gsi.de/documents/DOC-2006-Nov-45-1.pdf

http://144.206.159.178/ft/787/72682/13400987.pdf

Belle 2:

http://indico.mppmu.mpg.de/indico/getFile.py/access?contribId=1&sessionId=0&resId=0&materialId=slides&confId=1954

-- ThomasHauth - 23-Oct-2012

Topic attachments
I Attachment History Action Size Date Who Comment
PNGpng RecoLostHits.png r1 manage 16.3 K 2012-11-23 - 15:25 ThomasHauth Number of missing hits on track on QCD noPu
Edit | Attach | Watch | Print version | History: r15 < r14 < r13 < r12 < r11 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r15 - 2013-02-18 - DanielFunke
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback