Skip to content

Add opt-in switches for the multithreaded TPC digitizer - #2539

Merged
sawenzel merged 1 commit into
AliceO2Group:masterfrom
sawenzel:tpc-mt-digitizer-switch
Nov 12, 2026
Merged

sawenzel merged 1 commit into
AliceO2Group:masterfrom
sawenzel:tpc-mt-digitizer-switch

Conversation

@sawenzel

@sawenzel sawenzel commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

This adds two options to o2dpg_sim_workflow.py that change how TPC is digitized. Both are off by default.

  • --tpc-mt-digitizer runs TPC digitization in one device with NWORKERS_TF threads instead of NWORKERS_TF lanes, and also computes the distortions with NWORKERS_TF threads. It needs TPC digit chunking.
  • --tpc-sector-seeding seeds the lane digitizer per sector, so that the digits do not depend on the number of lanes.

Both need AliceO2Group/AliceO2#16090. Tested through the workflow runner on an anchored PbPb timeframe: tpcdigi, the merger and the TPC clusterization run in both modes, and the digits are identical.

https://its.cern.ch/jira/browse/O2-7309

Assisted by Claude Code.

This adds two options to o2dpg_sim_workflow.py that change how TPC is digitized. Both are off by default.

- --tpc-mt-digitizer runs TPC digitization in one device with NWORKERS_TF threads instead of NWORKERS_TF lanes.
- It also computes the distortions with NWORKERS_TF threads, and it needs TPC digit chunking.
- --tpc-sector-seeding seeds the lane digitizer per sector, so that the digits do not depend on the number of lanes.
- The metrics tool reads the worker count of the tpcdigi task from --tpc-digi-threads too.
- Both options need an O2 version with the sector seeding and the multithreaded TPC digitizer.

https://its.cern.ch/jira/browse/O2-7309
AliceO2Group/AliceO2#16085

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@sawenzel
sawenzel requested a review from jackal1-66 as a code owner November 9, 2026 13:40
@github-actions

github-actions Bot commented Nov 9, 2026

Copy link
Copy Markdown

REQUEST FOR PRODUCTION RELEASES:
To request your PR to be included in production software, please add the corresponding labels called "async-" to your PR. Add the labels directly (if you have the permissions) or add a comment of the form (note that labels are separated by a ",")

+async-label <label1>, <label2>, !<label3> ...

This will add <label1> and <label2> and removes <label3>.

The following labels are available
async-2023-pbpb-apass4
async-2023-pp-apass4
async-2024-pp-apass1
async-2022-pp-apass7
async-2024-pp-cpass0
async-2024-PbPb-apass1
async-2024-ppRef-apass1
async-2024-PbPb-apass2
async-2023-PbPb-apass5

@sawenzel
sawenzel merged commit c97ed0e into AliceO2Group:master Nov 12, 2026
11 checks passed
@sawenzel
sawenzel deleted the tpc-mt-digitizer-switch branch November 12, 2026 14:35
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.

1 participant