cms-patatrack / cmssw

CMSSW fork of the Patatrack project
https://patatrack.web.cern.ch/patatrack/index.html
Apache License 2.0
2 stars 5 forks source link

move to int32 for hit indices #583

Closed VinInn closed 3 years ago

fwyzard commented 3 years ago

Validation summary

Reference release CMSSW_11_2_0_pre10 at 6c149b2963ee Development branch cms-patatrack/master at 47423b3df7e0 Testing branch cms-patatrack/master at 47423b3df7e0 with PRs:

Validation plots

/RelValTTbar_14TeV/CMSSW_11_2_0_pre7-PU_112X_mcRun3_2021_realistic_v8-v1/GEN-SIM-DIGI-RAW

/RelValZMM_14/CMSSW_11_2_0_pre7-112X_mcRun3_2021_realistic_v8-v2/GEN-SIM-DIGI-RAW

/RelValZEE_14/CMSSW_11_2_0_pre7-112X_mcRun3_2021_realistic_v8-v1/GEN-SIM-DIGI-RAW

Validation plots (CPU vs GPU)

/RelValTTbar_14TeV/CMSSW_11_2_0_pre7-PU_112X_mcRun3_2021_realistic_v8-v1/GEN-SIM-DIGI-RAW

/RelValZMM_14/CMSSW_11_2_0_pre7-112X_mcRun3_2021_realistic_v8-v2/GEN-SIM-DIGI-RAW

/RelValZEE_14/CMSSW_11_2_0_pre7-112X_mcRun3_2021_realistic_v8-v1/GEN-SIM-DIGI-RAW

Throughput plots

/EphemeralHLTPhysics1/Run2018D-v1/RAW run=323775 lumi=53

scan-136.885502.png zoom-136.885502.png scan-136.885512.png zoom-136.885512.png scan-136.885522.png zoom-136.885522.png

logs and nvprof/nvvp profiles

/RelValTTbar_14TeV/CMSSW_11_2_0_pre7-PU_112X_mcRun3_2021_realistic_v8-v1/GEN-SIM-DIGI-RAW

/RelValZMM_14/CMSSW_11_2_0_pre7-112X_mcRun3_2021_realistic_v8-v2/GEN-SIM-DIGI-RAW

/RelValZEE_14/CMSSW_11_2_0_pre7-112X_mcRun3_2021_realistic_v8-v1/GEN-SIM-DIGI-RAW

Logs

The full log is available at https://patatrack.web.cern.ch/patatrack/validation/pulls/13a7a77294b8e32b503b6abf63fcf96c22939c56/log .

fwyzard commented 3 years ago

The impact on the throughput for quadruplets is around 1-2%.

No effect on the physics results, as expected.

fwyzard commented 3 years ago

I understand the change in data type. What does hitToTuple do ?

VinInn commented 3 years ago

kernel_checkOverflows is not run in standard wf hitToTuple is just a oneToMany association between hits and ntuple; it tells in which tuple a hit is. It is used mainly (only?) by the infamous shred-hit--cleaner (see #552)

in kernel_checkOverflows is just used to count (and eventually identify) the doublets that do not share any hit with an already built tracks (as requested by you in case lepton reconstruction would require them)

It is experimental code. This is why I suggested to start from #545 for the hit size issue

fwyzard commented 3 years ago

Throughput re-checked by hand:

Running 3 times over 4100 events with 1 jobs, each with 8 threads, 8 streams and 1 GPUs

master

master + #583