Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

going back to using EndPaths instead of FinalPaths in HLT configs #101

Open
missirol opened this issue Jan 28, 2025 · 2 comments
Open

going back to using EndPaths instead of FinalPaths in HLT configs #101

missirol opened this issue Jan 28, 2025 · 2 comments

Comments

@missirol
Copy link
Contributor

missirol commented Jan 28, 2025

During a discussion between some of us from TSG and the Core-Sw group in November 2023 (here), it was concluded that

  • the HLT menus in recent CMSSW releases do not need to use FinalPaths, they can instead simply use EndPaths as they used to do before Run 3, and
  • the Core-Sw group would like to remove FinalPaths from CMSSW in the near future.

The topic was briefly discussed at the Core-Sw meeting on Jan-28, 2025.

  • Core-Sw is interested in removing FinalPaths on the timescale of a few months from now, which in the current schedule could mean the 15_1_X cycle.
  • I guess that we/TSG would have to implement updates to the legacy ConfDB GUI in order to use EndPaths again, rather than FinalPaths, while still supporting existing HLT configs that are using FinalPaths.

Going back to EndPaths would also give the option to re-introduce per-stream prescale modules (something that was not considered necessary for Run 3, and is not possible to do with FinalPaths).

Ideally, we would make the move from FinalPaths to EndPaths early on in the development of the 15_0_X menus (say, by end of March), then we would be free from FinalPaths, and Core-Sw could remove them at some point during the 15_1_X cycle.

I'm opening this issue to discuss the possible implementation(s), and the corresponding timeline.

@Sam-Harper (since you led all the development to introduce Tasks and FinalPaths in the legacy GUI, #40) , how do you see this ?

@missirol
Copy link
Contributor Author

Just for the record, in the realm of workarounds, Andrea once mentioned

A simple workaround would be to add

FinalPath = EndPath

to FWCore/ParameterSet/python/Config.py :-)

.. and I guess (?) that another workaround would be to just change the python output of hlt-confdb to return EndPath instead of FinalPath.

str = object + path.name() + " = cms.FinalPath( ";

@Sam-Harper
Copy link
Contributor

.. and I guess (?) that another workaround would be to just change the python output of hlt-confdb to return EndPath instead of FinalPath.

hlt-confdb/src/confdb/converter/python/PythonPathWriter.java

Line 19 in e66935a

str = object + path.name() + " = cms.FinalPath( ";

I would be reluctant to do that option as it would apply for all menus ever read with this version of confdb and depending how EndPaths/FinalPaths interact in an older release could be bad. The impact I suspect will be minimum but still I would say its a last resort.

The method I would like to pursue is just flip all FinalPaths to EndPaths in confdb using some sort of automated function. That automated function could run for release templates >= CMSSW_15_1. But I would have to check if we're using FinalPaths to signal something, I dont think so but would have to check.

Anyways I need to sit down and have a look at this before I can say something for sure, this is just my gut reaction and could be missing something.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants