Skip to content

Commit fff6dc3

Browse files
committed
Bug-fix for correct thread assignment and input data filling
1 parent 83d0257 commit fff6dc3

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

GPU/GPUTracking/TPCClusterFinder/GPUTPCNNClusterizerKernels.cxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ GPUdii() void GPUTPCNNClusterizerKernels::Thread<GPUTPCNNClusterizerKernels::fil
124124
ChargePos peak = clusterer.mPfilteredPeakPositions[base_idx + batchStart];
125125
int row = static_cast<int>(peak.row()), pad = static_cast<int>(peak.pad());
126126

127-
if (clustererNN.nnClusterizerAddIndexData && transient_index == 0) {
127+
if (clustererNN.nnClusterizerAddIndexData && transient_index == (clustererNN.nnClusterizerElementSize - 1)) {
128128
uint top_idx = (base_idx + 1) * clustererNN.nnClusterizerElementSize;
129129
for (uint16_t i = 0; i < 8; i++) {
130130
Delta2 d = cfconsts::InnerNeighbors[i];
@@ -141,7 +141,7 @@ GPUdii() void GPUTPCNNClusterizerKernels::Thread<GPUTPCNNClusterizerKernels::fil
141141
clustererNN.inputData_32[top_idx - 2] = row / 152.f;
142142
clustererNN.inputData_32[top_idx - 1] = static_cast<float>(pad) / GPUTPCGeometry::NPads(row);
143143
}
144-
} else {
144+
} else if (transient_index < (clustererNN.nnClusterizerElementSize - 3)) {
145145
int time = static_cast<int>(peak.time());
146146
int r = CAMath::Floor(transient_index / ((2 * clustererNN.nnClusterizerSizeInputPad + 1) * (2 * clustererNN.nnClusterizerSizeInputTime + 1))) - clustererNN.nnClusterizerSizeInputRow;
147147
bool is_row_boundary = ((row + r) > (o2::tpc::constants::MAXGLOBALPADROW - 1)) || ((row + r) < 0);

0 commit comments

Comments
 (0)