CPV run3 geometry and readout#5499
CPV run3 geometry and readout#5499shahor02 merged 9 commits intoAliceO2Group:devAliceO2Group/AliceO2:devfrom
Conversation
shahor02
left a comment
There was a problem hiding this comment.
Hi @peressounko
I've tried to test this PR on 20 pbpb events, but not sure if the results I got are OK.
With
o2-raw-file-reader-workflow --input-conf raw/CPV/CPVraw.cfg $ARGS_ALL --configKeyValues "HBFUtils.nHBFPerTF=128" -b | o2-cpv-reco-workflow $ARGS_ALL --input-type raw --output-type digits --disable-mc -b
I see a log Writing 134973 digits, if I change the --output-type clusters, I get Finished, wrote 1236 clusters, 11TR and 0 Labels. Is it normal to have such a difference between the clusters and digits?
Then, in the cpvdigits.root I see 136040 digits, why the number of decoded digits is less that those from hits digitization.
Also, I see that your o2-cpv-reco-workflow does not write any output, all writers are commented out, and the readers also, at least I was not able run the recoflow starting from the MC digits, o2-cpv-reco-workflow --input-type digits --output-type clusters produces Invalid workflow: No matching output found for CPV/DIGITS/0. ...
Could you please bring the o2-cpv-reco-workflow to accordance with other detectors workflows, reading inputs and writing outputs by default, unless it is explicitly disabled, e.g.
(1) --disable-root-input : expect inputs provided by upstream workflows, don't enable readers
(2) --disable-root-output: don't write output file, just send the data.
BTW, the phos workflow seems to have the same problems.
Cheers,
Ruben
|
Hi @peressounko |
|
Dear @shahor02, concerning number of clusters vs digits: presently thresholds are not optimized yet, so many clusters merged to one big, especially in high multiplicity case. So this is possible. CPV experts will adjust parameters soon. |
|
Hi @peressounko OK for clusters, but what about the difference between the digits: original vs decoded from raw? For the spans: what we receive as a span is always sent as vector, it is just a way to use (as cons) the data owned by the framework, w/o creating an extra copy. See, e.g. writing: reading: with |
|
Dear @shahor02, |
|
Hi @peressounko
I am referring to the messages like
If you keep the new name, then yes, also the QC will need to be patched, but was there a reason to rename? |
|
Hi @shahor02 |
|
Hi @peressounko For the the QC patch: there is no other way but to merge this PR (with failing QC) and to apply a QC patch independently and create new tags both for O2 and QC (pinging to @Barthelemy ) |
|
Hi @peressounko I've tried your branch on 50 pbpb events with PHS and CPV, but it crashes on PHS digitiations: i.e. the digitsOut vector is corrupted. If I digitize CPV only, it works, but then I see the difference (261410 vs 263507) in the number of decoded: and original digits: |
|
PS: forgot fast generation line for he test which crashes: |
|
Hi @shahor02, |
|
Hi @peressounko |
|
Hi @shahor02, in your pack o2sim_Kine.root is missing. Without it Digitization does not start at al. |
|
@peressounko : did not we need it for digitization (apparently just to query the number of available events, though this could be done with hits...). I put the kine file here: https://cernbox.cern.ch/index.php/s/s67lITmdGQUy68z |
…S Digitizer to consume un-sorted hits; Fixes in clusterizer. Make one-to-one correspondence between Cells and MCLabels; fix CPV geometry
|
@shahor02 thank you, I reproduced problem and fixed typo. |
shahor02
left a comment
There was a problem hiding this comment.
@peressounko thanks! Now works, but please merge the peressounko#1 to make default options consistent and -h working.
Also (probably, this is for the future studies): while the recoflow for PHOS is very fast, the CPV has noticeable delay (~5s) to process 50 pbpb events. Can this be optimized?
|
Dear @shahor02, than you for fixes, I approved them, hope they will merge. Or should I merge manually and make another push? |
|
@peressounko you have to press "rebase and merge" button in your github repo to merge my PR, then your updated branch will propagate also to this PR. If you want to do addition modifications (e.g. remove "hits" option), you should pull your branch to your local repo, add a patch and force-push. For the the speed of CPV clustering: I see delay (compared to PHOS) also with raw input, where there are no labels involved, there should be something else... |
Make options consistent
|
Let us postpone Hits to next PR. |
|
OK for "hits", will merge once checks are passed. I was testing on 50 min.bias pbpb events, there the CPV reco from |
|
Error in build/O2/fullCI, build/O2/o2 and build/O2/o2-dataflow due to #include <PHOSWorkflow/PublisherSpec.h> to be patched in QC. |
|
@peressounko : How do you want to get this merged? Do we need the QC patch merged first, or will that then break QC without #5499 being merged? I.e. do they need to be merged at the same time? We try to avoid this, but if it is absolutely necessary, it can be done but must be synchronized a bit. |
|
Hi @davidrohr, if I remember correctly, in such cases we simply had the QC patch ready, |
|
Thanks, @davidrohr @shahor02, I prepared patch for QC or I can revert Publisher.h - what do you prefer? |
|
@peressounko you don't need to revert, just add old Publisher on top of the new Reader, so that O2 has no other dependency on the former except in the CMakelists. This would be indeed the cleanest solution |
|
Yes, we did that sonetines, but it needs synchronization with the qc people and has caused issues when we missed something. If wr can temporarily just keep the old file, I'd prefer that.
Kind Regards
David Rohr
Sent from my mobile. (Excuse the typos!)
…On February 24, 2021 10:34:30 AM GMT+01:00, Ruben Shahoyan ***@***.***> wrote:
Hi @davidrohr, if I remember correctly, in such cases we simply had the
QC patch ready,
merging the o2, then QC, the retaging both. Alternatively, @peressounko
, if the conflict is only due to the changed Publisher, you indeed can
add the old file temporarily (w/o using it in o2), then, once the QC is
changed to not use it, remove it again.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#5499 (comment)
|
|
@peressounko you would need to add also the old PHOS |
|
@davidrohr, the FST failed, I guess due to this: |
|
@shahor02 : Thanks for pinging me, it should actually have stopped at that place, that seems a bug, will fix that. |
|
Dear @shahor02, David, thank you for help and suggestions! I created QC ticket AliceO2Group/QualityControl#620 |
Switched to Run3 CPV geometry and readout format.
Fixed seg. violation in Clusterizer related to the way MC events are tracked: large event is split into several with smaller number of tracks, but for each pack of primaries independent Detector::endOfEvent() is called and then list of hits are merged in Merger. As a result, lists of hits are only partially sorted, only within individual bunches, what breaks Digitization and Clusterization algorithms. Digitization alg. was rewritten to consume unsorted list of hits.