Skip to content

Conversation

@alibuild
Copy link

@alibuild alibuild commented Apr 4, 2025

Your PR AliceO2Group#14145 cannot be merged as is. You should either run clang-format yourself and update the pull request, or merge this PR in yours.
You can find the AliceO2 coding conventions at https://github.com/AliceO2Group/CodingGuidelines.

shahor02 and others added 30 commits December 3, 2024 11:31
New option
--run-time-span-file <text file with run range_min range_max entries>
allows to push to DPL only those TFs which overlap with the
<runnumber> <range-min> <range-max>
(separators can be any whitespace, comma or semicolon) records provided
via text file (assuming that there are some entries for a given run,
otherwise the option is ignored).

Multiple ranges per run and multiple runs can be mentioned in a single
input file. The range limits can be indicated either as a UNIX
timestamp in ms or as an orbit number (in the fill the run belongs to).

In case an option --invert-irframe-selection is provided, the selections above are inverted:
TFs matching some of the provided ranges will be discarded, while the rest will be pushed to the DPL

At the end of the processing the ctf-writer will create a local file ctf_read_ntf.txt containing only
the number of TFs pushed to the DPL.
In case no TF passed the selections above, this file will contain 0.
* Fix hybrid vertexer printouts

* Move multiplicity mask to a vector<uint8_t>

* Add gpuSpan

* Debugging getSpan

* Checkpointing

* Fix access in tracklet finding

* Fix tracklet LUTs issue

* Debugging small discrepancies

* Fix bad PhiBins pick

* Add tracklet counting

* Fix indices for used clusters

* Add tracklet writing on the buffer

* tracklets on gpu

* Tracklet finder on GPU
)

A new event generator for event-pools.
This is a convenience wrapper on top of GeneratorO2Kine
which handles event pools better. It can talk to a pool as
a collection, instead of only to specific files.

In particular it offers functionality to
- self-pick a file from a pool
- discover available files in a pool be it on AliEn
  or local
- makes it easier to generate generic JSON configs, where users
  don't need to provide a full file path to use (which would
  be impractical for productions)
…#13768)

* Reset mParticles before filled with new set of particles

* Return with false instead of stopping execution in case of problems
In online, the strangeness tracking would be off via
export ARGS_EXTRA_PROCESS_o2_secondary_vertexing_workflow='--disable-cascade-finder --disable-3body-finder --disable-strangeness-tracker
but then the ASYNC part of the FST would fail.
…3782)

If we run multiple layers of Mergers, the merged object arrival time can be described as: merger cycle duration * number of layers (it can be shorter due to randomized timer shifts at startup).
As a consequence, adding each new layer adds the latency to the merger topology.

Assuming that the deployed Mergers are not expendable, we can rely on expecting the right number of input messages to know that each Merger in the lower layer produced an update, so we can publish the merged object.
As an effect, we get lower latency.
- Add the newly added on the fly V0 table that is produced in the Run2 to Run3 converter task in AliPhysics.
- The columns for the Run2OTFV0s no longer have the C in their name
Due to the linearization errors the covariance matrix of the track propagated to some point may become non-positive defined.
In this case an error will be logged (logarithmically throttled), the relevant correlation coefficient of the cov.matrix is
redefined to cure the position part of the cov.matrix and further program flow depends on the user settings for
DCAFitterN::setBadCovPolicy(v):

DCAFitterN::setBadCovPolicy(DCAFitterN::Discard) : abandon fit (default)

DCAFitterN::setBadCovPolicy(DCAFitterN::Override) : continue fit with overridden cov.matrix

DCAFitterN::setBadCovPolicy(DCAFitterN::OverrideAnFlag): continue fit with overridden cov.matrix but set the propagation failure flag (can be checked using the
isPropagationFailure(int cand = 0) method).
…ion (AliceO2Group#13787)

* O2-4592 - adding TOF dX and dZ to the track QA table with relative sigma precision nBins*2

* O2-4592 - typo fix

* O2-4592 - clang-format

* AOD: TrackQA_002

Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>

* AOD: Activate TrackQA_002

Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>

* O2-4592 - patch fix from Felix (not full fix yet)

* O2-4592 - typ fix - getting TOF source

---------

Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Co-authored-by: miranov25 <marian.ivanov@cern.cg>
Co-authored-by: Felix Schlepper <felix.schlepper@cern.ch>
* Bump trackextra table to the latest version

* update table version in test
…p#13788)

This introduces:
* asyncronous event generation
* possibility for parallel event generation

This is useful for:
* hiding latency (IO) of certain generators
* decoupling the actual work from the call sequence into HybridGenerator
* collaboration from multiple clones of the same generator to generate
  a certain number of events

The implementation relies on tbb::task_arena and input/output queues
for decoupling the task_arena from the HybridGenerator thread.

An example is added for parallel event gen.

In addition, this commit has the following changes:

- Small adjustments to seeding of Pythia8 in order
  to avoid same seeds in multiple parallel Pythia instances.

- possibility to init external generator from an INI file (typically
  done or available in O2DPG)

- use shared_ptr instead of unique_ptr to keep generators in order
  to avoid lifetime problems with async processing

- preparion to run underlying generator Init() functions in async way
  (not active yet; needs checks if generators are thread safe)
…ceO2Group#13792)

The changes introduce a configurable minimum PT value per track length in the ITS
tracking parameters. This allows for more fine-grained control over the minimum
PT requirement, which can be useful for different tracking scenarios.

The main changes are:

- Modify the `TrackingParameters` struct to include an array of 4 minimum PT
  values, one for each track length (7, 6, 5, 4).
- Update the track fitting logic in `TrackerTraits::findRoads()` to use the
  appropriate minimum PT value based on the track length.
- Update the default minimum PT value in `TrackingInterface::initialise()` to
  use the new array-based approach.

These changes provide more flexibility in tuning the ITS tracking parameters.
f3sch and others added 27 commits February 3, 2025 11:58
Allows reusing this variable later on.

Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
@alibuild alibuild closed this Apr 7, 2025
@alibuild alibuild deleted the alibot-cleanup-14145 branch April 7, 2025 08:18
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

Successfully merging this pull request may close these issues.