Skip to content

TICL: Consolidate v5 as Default Configuration and Cleanup Legacy Code#49932

Merged
cmsbuild merged 29 commits into
cms-sw:masterfrom
felicepantaleo:make_ticlv5_default_16_1_0_pre1
May 19, 2026
Merged

TICL: Consolidate v5 as Default Configuration and Cleanup Legacy Code#49932
cmsbuild merged 29 commits into
cms-sw:masterfrom
felicepantaleo:make_ticlv5_default_16_1_0_pre1

Conversation

@felicepantaleo

Copy link
Copy Markdown
Contributor

This PR establishes TICL v5 as the default reconstruction configuration, removing the need for explicit process modifiers and cleaning up significant amounts of legacy code associated with previous versions.

Key Changes:

  • Core Configuration:

  • Updated RecoHGCal/TICL/python/iterativeTICL_cff.py to use the TICL v5 chain (CLUE3DHigh -> TracksterLinks -> TICLCandidate) by default.

  • Removed fallback logic for v4.

  • Switched CLUE3DHighStep to use PFN inference by default.

  • Introduced ticl_dev process modifier for future development.

  • C++ Plugins:

  • PFTICLProducer: Simplified logic by removing the isTICLv5_ switch. The default behavior now assumes TICL v5 timing from TICLCandidate.

  • PatternRecognition: Enabled computeLocalTime by default in PatternRecognitionbyCLUE3D and PatternRecognitionbyCA. Enabled usePCACleaning by default in PatternRecognitionbyCLUE3D.

  • Validation & DQM:

  • Updated HGCalValidator to validate ticlCandidate and ticlTracksterLinks collections by default.

  • Updated makeHGCalValidationPlots.py to plot v5 collections.

  • Updated RecoHGCal_EventContent_cff.py to consolidate keep statements for v5 collections.

  • Fixed handling of empty collections in validator plugins.

  • Cleanup:

  • Removed obsolete process modifiers: ticl_v4, ticl_v5, clue3D, fastJetTICL, enableCPfromPU.

  • Removed deprecated Python configurations: ticl_iterations.py, customiseForTICLv5_cff.py, customiseTICLFromReco.py.

  • Removed legacy TracksterInferenceByCNNv4 implementation.

  • Removed deprecated harvestHGCalValidationPlots.py script.

  • HLT & Workflows:

  • Updated HLT 75e33 and Scouting menus to use TICL v5 components.

  • Removed obsolete HLT modules (hltParticleFlowSuperClusterHGCalFromTICLL1Seeded, hltParticleFlowSuperClusterHGCalFromTICLUnseeded).

  • Updated PyReleaseValidation workflows to reflect the removal of the ticl_v5 modifier.

Testing:

  • Standard matrix workflows.
  • HGCal validation suites.

Notes:

This PR represents a major consolidation of the TICL configuration, simplifying the codebase and establishing a clean baseline for future developments.

@cmsbuild

cmsbuild commented Jan 24, 2026

Copy link
Copy Markdown
Contributor

cms-bot internal usage

@felicepantaleo

Copy link
Copy Markdown
Contributor Author

@cmsbuild please test

@cmsbuild

Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-49932/47681

@cmsbuild

Copy link
Copy Markdown
Contributor

A new Pull Request was created by @felicepantaleo for master.

It involves the following packages:

  • Configuration/EventContent (operations)
  • Configuration/ProcessModifiers (operations)
  • Configuration/PyReleaseValidation (pdmv)
  • HLTrigger/Configuration (hlt)
  • RecoEcal/EgammaClusterProducers (reconstruction)
  • RecoHGCal/Configuration (reconstruction)
  • RecoHGCal/TICL (reconstruction)
  • RecoLocalCalo/HGCalRecProducers (reconstruction)
  • RecoParticleFlow/PFClusterProducer (reconstruction)
  • SimCalorimetry/HGCalAssociatorProducers (simulation)
  • SimCalorimetry/HGCalSimProducers (simulation)
  • Validation/Configuration (dqm, simulation)
  • Validation/HGCalValidation (dqm)

@AdrianoDee, @DickyChant, @Martin-Grunewald, @Moanwar, @antoniovagnerini, @civanch, @ctarricone, @davidlange6, @fabiocos, @ftenchini, @gabrielmscampos, @jfernan2, @kpedro88, @mandrenguyen, @mdhildreth, @miquork, @mmusich, @nothingface0, @rseidita, @srimanob can you please review it and eventually sign? Thanks.
@Martin-Grunewald, @Prasant1993, @ReyerBand, @Sam-Harper, @SohamBhattacharya, @VourMa, @a-kapoor, @afiqaize, @apsallid, @argiro, @bsunanda, @cseez, @denizsun, @edjtscott, @fabiocos, @forthommel, @hatakeyamak, @jainshilpi, @lecriste, @lgray, @makortel, @missirol, @mmarionncern, @mmusich, @pfs, @ram1123, @rchatter, @rovere, @salimcerci, @sameasy, @seemasharmafnal, @sethzenz, @slomeo, @sobhatta, @thomreis, @valsdav, @vandreev11, @varuns23, @wang0jin this is something you requested to watch as well.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

@cmsbuild

Copy link
Copy Markdown
Contributor

-1

Failed Tests: UnitTests
Size: This PR adds an extra 452KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-667298/50874/summary.html
COMMIT: 9311241
CMSSW: CMSSW_16_1_X_2026-01-24-1100/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/49932/50874/install.sh to create a dev area with all the needed externals and cmssw changes.

Failed Unit Tests

I found 1 errors in the following unit tests:

---> test testProduceNanoHLT had ERRORS

Comparison Summary

Summary:

  • You potentially removed 127 lines from the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 4274 differences found in the comparisons
  • DQMHistoTests: Total files compared: 52
  • DQMHistoTests: Total histograms compared: 4021886
  • DQMHistoTests: Total failures: 1526
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 4020340
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 5501.189 KiB( 51 files compared)
  • DQMHistoSizes: changed ( 34434.0,... ): 844.816 KiB HGCAL/HGCalValidator
  • DQMHistoSizes: changed ( 34434.0,... ): 424.385 KiB HLT/HGCAL
  • Checked 222 log files, 193 edm output root files, 52 DQM output files
  • TriggerResults: found differences in 5 / 50 workflows

Max Memory Comparisons exceeding threshold

@cms-sw/core-l2 , I found 9 workflow step(s) with memory usage exceeding the error threshold:

Expand to see workflows ...
  • Error: Workflow 34434.0_TTbar_14TeV+Run4D121 step3 max memory diff 270.5 exceeds +/- 90.0 MiB
  • Error: Workflow 34434.0_TTbar_14TeV+Run4D121 step2 max memory diff 508.8 exceeds +/- 90.0 MiB
  • Error: Workflow 34434.75_TTbar_14TeV+Run4D121_HLT75e33Timing step2 max memory diff 330.1 exceeds +/- 90.0 MiB
  • Error: Workflow 34434.911_TTbar_14TeV+Run4D121_DD4hep step3 max memory diff 323.8 exceeds +/- 90.0 MiB
  • Error: Workflow 34434.911_TTbar_14TeV+Run4D121_DD4hep step2 max memory diff 575.5 exceeds +/- 90.0 MiB
  • Error: Workflow 34496.0_CloseByPGun_CE_E_Front_120um+Run4D121 step3 max memory diff 205.6 exceeds +/- 90.0 MiB
  • Error: Workflow 34496.0_CloseByPGun_CE_E_Front_120um+Run4D121 step2 max memory diff 382.0 exceeds +/- 90.0 MiB
  • Error: Workflow 34500.0_CloseByPGun_CE_H_Coarse_Scint+Run4D121 step2 max memory diff 402.7 exceeds +/- 90.0 MiB
  • Error: Workflow 34500.0_CloseByPGun_CE_H_Coarse_Scint+Run4D121 step3 max memory diff 138.8 exceeds +/- 90.0 MiB

@felicepantaleo

Copy link
Copy Markdown
Contributor Author

@cmsbuild please test

@cmsbuild

Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-49932/47683

@mmusich

mmusich commented May 8, 2026

Copy link
Copy Markdown
Contributor

@cmsbuild, please test

  • to refresh the comparisons

@mmusich

mmusich commented May 11, 2026

Copy link
Copy Markdown
Contributor

@smuzaffar tests look stuck here, can you have a look?

@mmusich

mmusich commented May 13, 2026

Copy link
Copy Markdown
Contributor

@cmsbuild, please abort

@mmusich

mmusich commented May 13, 2026

Copy link
Copy Markdown
Contributor

@cmsbuild, please test

@cmsbuild

Copy link
Copy Markdown
Contributor

+1

Size: This PR adds an extra 28KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-667298/53214/summary.html
COMMIT: b975a7e
CMSSW: CMSSW_17_0_X_2026-05-12-2300/el8_amd64_gcc13
Additional Tests: HLT_P2_INTEGRATION,HLT_P2_TIMING
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/49932/53214/install.sh to create a dev area with all the needed externals and cmssw changes.

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-667298/53214/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-667298/53214/git-merge-result

HLT P2 Timing: chart

Comparison Summary

Summary:

  • You potentially removed 422 lines from the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 6041 differences found in the comparisons
  • DQMHistoTests: Total files compared: 66
  • DQMHistoTests: Total histograms compared: 4560893
  • DQMHistoTests: Total failures: 10257
  • DQMHistoTests: Total nulls: 1
  • DQMHistoTests: Total successes: 4550615
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 27889.836000000007 KiB( 65 files compared)
  • DQMHistoSizes: changed ( 34434.0,... ): 1295.576 KiB HLT/HGCAL
  • DQMHistoSizes: changed ( 34434.0,... ): 844.816 KiB HGCAL/HGCalValidator
  • DQMHistoSizes: changed ( 34434.0,... ): -22.112 KiB HGCAL/PFCandidates
  • DQMHistoSizes: changed ( 34434.0,... ): -1.207 KiB HGCAL/0
  • DQMHistoSizes: changed ( 34496.0 ): -0.008 KiB MessageLogger/Warnings
  • DQMHistoSizes: changed ( 34434.7521 ): 884.773 KiB HLT/HGCAL
  • DQMHistoSizes: changed ( 34434.771 ): 1303.584 KiB HLT/HGCAL
  • DQMHistoSizes: changed ( 34434.775,... ): 1727.969 KiB HLT/HGCAL
  • Checked 276 log files, 236 edm output root files, 66 DQM output files
  • TriggerResults: found differences in 19 / 64 workflows

Max Memory Comparisons exceeding threshold

@cms-sw/core-l2 , I found 2 workflow step(s) with memory usage exceeding the error threshold:

Expand to see workflows ...
  • Error: Workflow 34434.7521_TTbar_14TeV+Run4D121_HLT75e33TimingTiclV5TrackLinkGNN step2 max memory diff -170.8 exceeds +/- 90.0 MiB
  • Error: Workflow 34434.771_TTbar_14TeV+Run4D121_NGTScoutingAll step2 max memory diff -169.4 exceeds +/- 90.0 MiB

@Moanwar

Moanwar commented May 13, 2026

Copy link
Copy Markdown
Contributor

Nice, I am not sure what changed, but the number of workflows above the memory threshold has dropped a lot since the last test.

@mmusich

mmusich commented May 13, 2026

Copy link
Copy Markdown
Contributor

For the record the change in timing is the following reported by the bot at #49932 (comment):

HLT timing menu (on GPU)

CMSSW_17_0_X_2026-05-12-2300 CMSSW_17_0_X_2026-05-12-230 + This PR
Screenshot from 2026-05-13 14-17-47 Screenshot from 2026-05-13 14-17-54

The net time saving per event is 6288.0 ms - 5875.3ms = 412.7ms (i.e. $\color{Green}\Large{\textbf{-6.5\%}}$)

HLT timing menu (on CPU)

CMSSW_17_0_X_2026-05-12-2300 CMSSW_17_0_X_2026-05-12-230 + This PR
Screenshot from 2026-05-13 14-18-02 Screenshot from 2026-05-13 14-18-08

The net time saving per event is 8513.0 ms -8079.9 ms = 433.1 ms (i.e. $\color{Green}\Large{\textbf{-5.08\%}}$)

NGT scouting menu

CMSSW_17_0_X_2026-05-12-2300 CMSSW_17_0_X_2026-05-12-230 + This PR
Screenshot from 2026-05-13 14-17-32 Screenshot from 2026-05-13 14-17-41

The net time saving per event is 7414.5ms - 6836.7ms = 577.8ms (i.e. $\color{Green}\Large{\textbf{-7.8\%}}$)

As expected the GPU memory usage is unvaried (within measurement uncertainties), e.g. log:

image

@mmusich

mmusich commented May 13, 2026

Copy link
Copy Markdown
Contributor

+hlt

@mmusich

mmusich commented May 13, 2026

Copy link
Copy Markdown
Contributor

@felicepantaleo , just for my education, is it expected that e.g. in the "vanilla" Phase-2 workflow wf 34434.0, the HLT validation plots in HLT / HGCAL / HGCalValidator / hltTiclTracksterLinksSuperclusteringDNN are all empty?
Is this iteration run by default?

@felicepantaleo

Copy link
Copy Markdown
Contributor Author

@mmusich yes, the superclustering DNN efficiency is still low and the model needs retuning. It might be that the iteration has run, but for this tight configuration it did not find any supercluster.

@felicepantaleo

Copy link
Copy Markdown
Contributor Author

Could you please check this and sign?
@cms-sw/simulation-l2 @cms-sw/reconstruction-l2 @cms-sw/ml-l2 @cms-sw/pdmv-l2 @cms-sw/dqm-l2

@Moanwar

Moanwar commented May 15, 2026

Copy link
Copy Markdown
Contributor

+1

  • Ohh i believed i already did :)

@gabrielmscampos

Copy link
Copy Markdown
Member

+dqm

@civanch

civanch commented May 16, 2026

Copy link
Copy Markdown
Contributor

+1

@AdrianoDee

Copy link
Copy Markdown
Contributor

+pdmv

@mmusich

mmusich commented May 18, 2026

Copy link
Copy Markdown
Contributor

@cms-sw/ml-l2 your signature is required here.

@y19y19

y19y19 commented May 18, 2026

Copy link
Copy Markdown
Contributor

+ml

@cmsbuild

Copy link
Copy Markdown
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @sextonkennedy, @mandrenguyen, @ftenchini (and backports should be raised in the release meeting by the corresponding L2)
Notice This PR was tested with additional Pull Request(s), please also merge them if necessary: cms-data/RecoHGCal-TICL#12

@mandrenguyen

Copy link
Copy Markdown
Contributor

+1

@makortel

Copy link
Copy Markdown
Contributor

It seems that this PR caused problems, see #51017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.