-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
[DO NOT MERGE] Add duplicate pixels #37496
[DO NOT MERGE] Add duplicate pixels #37496
Conversation
…be in sync with the GPU code)
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-37496/29198
|
A new Pull Request was created by @ferencek (Dinko F.) for master. It involves the following packages:
@jpata, @cmsbuild, @clacaputo, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@ferencek we noticed that replacing |
PS. This should reduce the differences in pixel clusters of ~90% so I'm in favor of this PR, just wanted to say that it should not be the last one... |
There are pixel-level and cluster-level thresholds so it is possible that individual pixels would not pass the cluster-level threshold but their sum would. However, I am actually not sure what the final goal here is? To ensure that the legacy CPU and new GPU code give identical results? Does it really make sense to modify the legacy CPU code until it reproduces the GPU code (assuming this is even possible without significant re-engineering)? Note that already this addition of duplicate pixels does not make much sense from the detector point of view. Not that what was done so far in the legacy code was a much better solution. So if we really wanted to touch the legacy code, it would make sense to do something that makes sense from the detector point of view and that would be to completely kill duplicate pixels. I'm not familiar enough with the GPU code but I am a priori against re-engineering the legacy code just so it could reproduce what is done in the GPU code. In the legacy code the |
And based on what I wrote above about the |
I can only second @ferencek words. The code shall do what best from a detector & physics point of view. If this is not the case anymore somebody shall decide what action shall be taken to produce (what now considered) correct results compatible with computational costs. |
@cmsbuild please test |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-6586b3/23761/summary.html Comparison SummarySummary:
|
@ferencek clearly I'm in favor to have the best solution (ie. removal of both the duplicated pixel) implemented on both GPU and CPU. |
Hi @silviodonato, yes, I think it is possible to have the CPU code ready before the start of data taking. I assume we are talking about CMSSW_12_4_0 as the target release. |
@ferencek please have a look at the solution proposed in #37359 (comment), that would be ideal for the TSG as the plan is to move to Alpaka at some point. |
@silviodonato, not sure how the migration to Alpaka is relevant to the legacy CPU code. I specifically had in mind minimal changes to the legacy clusterizer and the legacy unpacker I would not even touch. This way the two points Andrea listed would be satisfied. |
Once we migrate the GPU code to Alpaka, we will be able to run the same code on both CPU and GPU. |
@jpata, given the discussion above, it turned into more of a discussion topic than something that should be considered for merging. Should I add [DO NOT MERGE] or something else to that effect in the title of the PR to avoid confusion? |
@silviodonato, here is a PR that removes duplicate pixels in the legacy CPU code #37559 |
-reconstruction
|
Yes, this PR should be closed. |
PR description:
In this PR duplicate pixels in the clusterizer code are added together instead of taking the last occurence. The goal of the PR is to bring the CPU legacy code in sync with the GPU code as a follow up to the discussions in #35376 and #37359
No changes are expected in MC samples. In the data there could be some tiny differences in case some duplicate pixels appear.
PR validation:
Code compiles :)