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
Follow up after migration to tasks in #17801 #18018
Comments
A new Issue was created by @slava77 Slava Krutelyov. @davidlange6, @Dr15Jones, @smuzaffar can you please review it and eventually sign/assign? Thanks. cms-bot commands are listed here |
assign core |
New categories assigned: core @Dr15Jones,@smuzaffar you have been requested to review this Pull request/Issue and eventually sign? Thanks |
Here are the comments that were not resolved when
The rest were all comments to PR #17801
Maybe one could reorganize so each Corrector sequence was in It might be possible to define some special function To answer the specific question in the comment, after the Python
|
On 3/22/17 2:05 PM, W. David Dagenhart wrote:
#
11.
"I notice that the edmConfigDump of step3 in 136.725 now
takes a bit longer and it produces 70% more lines."
Is the concern that there are modules defined that
are not used? That is not a new problem. Before the Tasks PR,
all that extra stuff was being created and then was pruned.
I agree it would be good if unnecessary things were not in
configurations. Or are you concerned about the size of the
output of edmConfigDump. If before calling edmConfigDump
you added a call to the Process prune function at the end
of the configuration, that would remove the unneeded modules.
That function still exists.
can the "prune" be called safely now by default?
One concern is the extra CPU to be spent in "customise" and similar methods
that loop over process modules and other attributes to apply
modifications like in early delete.
|
Before the implementation of Tasks it was important to prune when unscheduled was enabled, because if you did not prune then all those extra modules would get constructed in the C++ part of cmsRun and be there waiting to run unscheduled. That reason is now gone, because anything not on a scheduled Task/Path/EndPath does not get passed into the C++. One motivation for not pruning is that it takes CPU time to prune. There is a lot of work going on there identifying what can be pruned and then actually doing the deletes. I've never profiled it so I do not know if it is significant. And in a cmsRun job when the ParameterSet is passed to the C++ part, the Python interpreter gets deleted anyway so the memory is cleaned up then. There would also be a problem if you prune before the absolute end the configuration, one might be concerned that a customize function would need one of the modules that would have been pruned. other than that, I think the prune function is safe and I am not aware of any problem with it (and if there is one we should fix it). But I can see your point about extra time in customise and similar methods. And while not configuring unneeded modules in the first place would be better, practically that kind of cleanup may never happen ... I will not do anything on this until I hear from Chris. |
PR #18057 takes care of items 5 and 10 from my list. |
PR #18081 Takes care of item 1 from my list. Items 4 and 11 I am waiting for a response from someone else before I do anything and I consider the rest to be the responsibility of someone else. So I am done with my part of this for the moment. |
closing as partially resolved |
Several changes made in #17801 will need updates to resolve comments in code review
#17801 (review)
The text was updated successfully, but these errors were encountered: