ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

30
ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    214
  • download

    1

Transcript of ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

Page 1: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

David Rohrfor the ALICE Corporation

25.5.2010Lisbon

Page 2: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Large Hadron Collider

Page 3: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

The ALICE Experiment

Page 4: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracking

Clusters Tracks

Page 5: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Real TPC pp-Event in Online Event Display

Page 6: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Simulated Heavy Ion Event

Page 7: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracks found in simulated Heavy Ion Event

Page 8: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracks in simulated Central Heavy Ion Event

Page 9: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

TPC Clusters divited into Slices

Page 10: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

The ALICE TPC

Page 11: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

TPC Tracker and Merger

Page 12: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

One ALICE TPC Sector(Traking is performed row by row)

Page 13: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracking Algorithm

Category of Task Name of Task Description on Task

(Initialization)

Combinatorial Part(Cellular Automation)

I: Neighbors FindingConstruct Seeds(Track Candidates)II: Evolution

Kalman Filter PartIII: Tracklet Construction

Fit SeedExtrapolate TrackletFind New Clusters

IV: Tracklet Selection Select good Tracklets

(Tracklet Output)

Page 14: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Step I: Neighbors Finder(Fit best straight lines)

dx+

Page 15: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Step II: Evolution(Keep coinciding links)

Page 16: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Step III: Tracklet Construction

Green: Seed Red: ExtrapolationClusters close to the extraplation point are searched

Page 17: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Neighbours Finder on Real Data

Page 18: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Evolution Step on Real Data

Page 19: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracklet Construction on Real Data

Page 20: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracklet Selection on Real Data

Page 21: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

NVIDIA CUDA GPU

Page 22: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Parallel Tracklet Construction

Current Row

Tracklets are independent and can be processed simultaneouslyBecause of data locality the tracklets are processed for a common RowSingle Instruction Decoder Either parallel fitting or extrapolationRed: Initial Seed Green: Extrapolation

Page 23: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Initial GPU Tracker Performance (Peripheral Pb-PB)

(8 threads on Nehalem CPU with 8 virtual / 4 physical cores) Focus on Tracklet Construction when optimizing

Page 24: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Active GPU Threads for the First Implementation

Active GPU Threads: 19%

Colors represent Tracklet Constructor Steps:Black: IdleBlue: Track FitGreen: Track Extrapolation

x-axis: threads y-axis: time

Page 25: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Active GPU Threads using Dynamic Scheduling

Active GPU Threads: 62%Colors represent Tracklet Constructor Steps:Black: IdleBlue: Track FitGreen: Track Extrapolation

x-axis: threads y-axis: time

Page 26: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Pipelining

Initialization / Output on CPU, Tracking on GPU and DMA Transfer can overlap

Time

Page 27: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Final Speedup (Central Heavy Ion)

(CPU performance was doubled as a side effect)

Page 28: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Final Speedup in Contrast to Event Size

(PP Mode: Special variant optimized for small scale events)

Page 29: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Tracking Efficiency

CPU

GPU

Page 30: ALICE TPC Online Tracking on GPU David Rohr for the ALICE Corporation 25.5.2010 Lisbon.

ALICE TPC Online Tracking on GPU

IntroductionTracking AlgorithmNVIDIA CUDATracking on GPUResultsSummary

Summary

Twofold performance increase on CPU2.5-fold performance increase compared to CPUTracking efficiency matches the CPU tracker‘s efficiencyA common source code ensures maintainabilityCPU still available during the GPU tracking

Perspective for the Future

Next NVIDIA GPU generation Fermi may result in another boostTrack Merger may be adapted to run on the GPU