Skip to content

Add FT0 module#536

Merged
Barthelemy merged 13 commits into
AliceO2Group:masterfrom
Kavaldrin:QC_for_FT0_merging
Nov 12, 2020
Merged

Add FT0 module#536
Barthelemy merged 13 commits into
AliceO2Group:masterfrom
Kavaldrin:QC_for_FT0_merging

Conversation

@Kavaldrin
Copy link
Copy Markdown
Contributor

As requested, first part of QC for FT0 detector.
It is worth to mention that there is a still unsolved issue which may affect this code.
https://alice.its.cern.ch/jira/browse/QC-459

Copy link
Copy Markdown
Collaborator

@Barthelemy Barthelemy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi,

thank you.

I have a question: why not fill mChargeHistogram directly in the task ?
it seems like an extra step to first populate a TTree with every single event you get and then process the tree to populate the histogram.
Moreover, it seems that there mChargeHistogram in both the Task and the PostProcessing.

Otherwise I don't really have comments on the code itself.

///
/// \file ChannelsCheck.h
/// \author Milosz Filus
/// Dummy check for FT0 detector
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it really a dummy check ?

///
/// \file ChannelsCheck.h
/// \author Milosz Filus
/// Another dummy check for FT0 detector
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SAme question

@Kavaldrin
Copy link
Copy Markdown
Contributor Author

Kavaldrin commented Nov 5, 2020

Hello Barth,
all of these checks will be probably modified / replaced by experts who know how to check that data in a proper way.
The same thing for monitoring object.
My intention was to create easy start for them, that they can check how to do some things based on this code.
Also pp task is here just to present how to read tree from database and then do some stuff on this tree and the example is histogram generation.

@@ -0,0 +1,106 @@
{
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, I saw on todays slides by Alla that you had a multinode workflow where you merge sampled data, instead of monitor objects. Is that really true, or that was some kind of mistake in slides?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To be honest I'm a bit confused, because from generated graph https://i.imgur.com/sCPfHVe.jpg (using -g option) there is no task execution on local node (which would create monitoring object), but merger works on monitoring objects, so input of merger should be a monitoring object. Well I need to look on implementation because it looks like I'm missing something.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let us know if you need some clarifications.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the slide 5, this is how it is supposed to look like in the big picture:
https://indico.cern.ch/event/873380/contributions/3850119/attachments/2036439/3409783/WP7plenaryMay.pdf
Some parallel proxies are replaced with one, as far as I remember, but otherwise it should match what you get (disregarding devices generated automatically by DPL).

Copy link
Copy Markdown
Contributor Author

@Kavaldrin Kavaldrin Nov 9, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@knopers8
Thank you for the slide with explanation.
Right, it seems I made a mistake in a slide, there is a task execution and monitoring object creation before sending it to remote device, but I do not undestand why the generated graph does not contain task runner.
Maybe adding -g option ends workflow generation before attaching task runner to workflow?

Copy link
Copy Markdown
Collaborator

@knopers8 knopers8 Nov 9, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I doubt it. I've just crosschecked on my machine and the proxy after dispatcher is still created.

In case of remote tasks: Does your machine name (the --host argument, specifically) match one from your list of machines in a data sampling policy? A proxy for sampling policies won't be created on machines which don't need it.
Similarly, in case of local tasks, you need your machine name among "machines" in the task configuration.

Copy link
Copy Markdown
Contributor Author

@Kavaldrin Kavaldrin Nov 9, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@knopers8 Well I will update multinode-config to my current version, because I completely removed data sampling policies + remote task.

Sorry, I was describing my current version, forgot to update this PR.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, so to make your local task BasicDigitQcTask appear, you have to run QC with --local --host 2a (or 3a), so QC knows that this is the proper machine to load this task. I am not sure however, how far can you get away with mocking the names instead of using real machines.

@Barthelemy Barthelemy merged commit c36e231 into AliceO2Group:master Nov 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants