Skip to content

ITS: simplify configuration of iterations#15363

Merged
f3sch merged 1 commit into
AliceO2Group:devfrom
f3sch:its/config
May 11, 2026
Merged

ITS: simplify configuration of iterations#15363
f3sch merged 1 commit into
AliceO2Group:devfrom
f3sch:its/config

Conversation

@f3sch
Copy link
Copy Markdown
Collaborator

@f3sch f3sch commented May 5, 2026

Simplifies configuration of individual iterations (should make it easier to add more configurations in the future), especially attacking this kind of pattern with hardcoded iterations:

if (iteration == 0 || iteration == 3) {
    prepareClusters(trkParam, maxLayers);
  }

@f3sch
Copy link
Copy Markdown
Collaborator Author

f3sch commented May 7, 2026

@fprino, @shahor02 what do you think about this?

@shahor02
Copy link
Copy Markdown
Collaborator

shahor02 commented May 7, 2026

@f3sch the idea is good, but from the superficial check cannot say I understood all details (even leaving aside the gpu part) :)
Will try to check in more details later.

@alibuild
Copy link
Copy Markdown
Collaborator

alibuild commented May 8, 2026

Error while checking build/O2/fullCI_slc9 for 29435a5 at 2026-05-08 06:18:

## sw/BUILD/O2-latest/log
/sw/SOURCES/O2/slc9_x86-64-slc9_x86-64/0/Detectors/ITSMFT/ITS/tracking/GPU/cuda/TrackingKernels.cu(1263): error: no instance of function template "o2::its::countTrackletsInROFsHandler" matches the specified type
/sw/SOURCES/O2/slc9_x86-64-slc9_x86-64/0/Detectors/ITSMFT/ITS/tracking/GPU/cuda/TrackingKernels.cu(1290): error: no instance of function template "o2::its::computeTrackletsInROFsHandler" matches the specified type
ninja: build stopped: subcommand failed.

Full log here.

@alibuild
Copy link
Copy Markdown
Collaborator

Error while checking build/O2/fullCI_slc9 for c752ef1 at 2026-05-10 09:30:

## sw/BUILD/O2-latest/log
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Full log here.

Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
@f3sch
Copy link
Copy Markdown
Collaborator Author

f3sch commented May 10, 2026

Maybe for context for the GPU-parts, we have in many functions where we transfer data to the device, this call structure:

void loadStuff(int iteration){
   if (!iteration) {
     // ....
   }
}

which I moved simply into a more general if in TrackerTraitsGPU:

void initialise(int iteration){
   if(mTrkParams[iteration][LoadStuff]){
      loadStuff1();
      loadStuff2();
      //....    
   }
}

so the actual change is negligible and trivial but it looks like a lot since the call signatures get modified.

Copy link
Copy Markdown
Collaborator

@shahor02 shahor02 left a comment

Choose a reason for hiding this comment

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

@f3sch thanks for the hints! As far as I could see, all is fine.

@f3sch f3sch enabled auto-merge (rebase) May 11, 2026 06:43
@f3sch
Copy link
Copy Markdown
Collaborator Author

f3sch commented May 11, 2026

@njacazio @fcolamar please approve

@f3sch f3sch merged commit 3159c53 into AliceO2Group:dev May 11, 2026
11 of 12 checks passed
@f3sch f3sch deleted the its/config branch May 11, 2026 19:17
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.

4 participants