@@ -536,7 +536,7 @@ GPUg() void __launch_bounds__(256, 1) computeLayerCellsKernel(
536536template <bool initRun, int NLayers>
537537GPUg () void __launch_bounds__ (256 , 1 ) computeLayerTrackletsMultiROFKernel(
538538 const IndexTableUtils<NLayers>* utils,
539- const uint8_t * multMask,
539+ const typename ROFMaskTable<NLayers>::View multMask,
540540 const int layerIndex,
541541 const typename ROFOverlapTable<NLayers>::View rofOverlaps,
542542 const typename ROFVertexLookupTable<NLayers>::View vertexLUT,
@@ -565,6 +565,10 @@ GPUg() void __launch_bounds__(256, 1) computeLayerTrackletsMultiROFKernel(
565565 const int totalROFs0 = rofOverlaps.getLayer (layerIndex).mNROFsTF ;
566566 const int totalROFs1 = rofOverlaps.getLayer (layerIndex + 1 ).mNROFsTF ;
567567 for (unsigned int pivotROF{blockIdx .x }; pivotROF < totalROFs0; pivotROF += gridDim .x ) {
568+ if (!multMask.isROFEnabled (layerIndex, pivotROF)) {
569+ continue ;
570+ }
571+
568572 const auto & pvs = vertexLUT.getVertices (layerIndex, pivotROF);
569573 auto primaryVertices = gpuSpan<const Vertex>(&vertices[pvs.getFirstEntry ()], pvs.getEntries ());
570574 if (primaryVertices.empty ()) {
@@ -782,7 +786,7 @@ GPUg() void __launch_bounds__(256, 1) processNeighboursKernel(
782786
783787template <int NLayers>
784788void countTrackletsInROFsHandler (const IndexTableUtils<NLayers>* utils,
785- const uint8_t * multMask,
789+ const typename ROFMaskTable<NLayers>::View& multMask,
786790 const int layer,
787791 const typename ROFOverlapTable<NLayers>::View& rofOverlaps,
788792 const typename ROFVertexLookupTable<NLayers>::View& vertexLUT,
@@ -840,7 +844,7 @@ void countTrackletsInROFsHandler(const IndexTableUtils<NLayers>* utils,
840844
841845template <int NLayers>
842846void computeTrackletsInROFsHandler (const IndexTableUtils<NLayers>* utils,
843- const uint8_t * multMask,
847+ const typename ROFMaskTable<NLayers>::View& multMask,
844848 const int layer,
845849 const typename ROFOverlapTable<NLayers>::View& rofOverlaps,
846850 const typename ROFVertexLookupTable<NLayers>::View& vertexLUT,
@@ -1300,7 +1304,7 @@ void computeTrackSeedHandler(CellSeed<NLayers>* trackSeeds,
13001304
13011305// / Explicit instantiation of ITS2 handlers
13021306template void countTrackletsInROFsHandler<7 >(const IndexTableUtils<7 >* utils,
1303- const uint8_t * multMask,
1307+ const ROFMaskTable< 7 >::View& multMask,
13041308 const int layer,
13051309 const ROFOverlapTable<7 >::View& rofOverlaps,
13061310 const ROFVertexLookupTable<7 >::View& vertexLUT,
@@ -1329,7 +1333,7 @@ template void countTrackletsInROFsHandler<7>(const IndexTableUtils<7>* utils,
13291333 gpu::Streams& streams);
13301334
13311335template void computeTrackletsInROFsHandler<7 >(const IndexTableUtils<7 >* utils,
1332- const uint8_t * multMask,
1336+ const ROFMaskTable< 7 >::View& multMask,
13331337 const int layer,
13341338 const ROFOverlapTable<7 >::View& rofOverlaps,
13351339 const ROFVertexLookupTable<7 >::View& vertexLUT,
0 commit comments