From cecd70b38e7ca34b8f85d5f06c8da6234be430bc Mon Sep 17 00:00:00 2001 From: Marco Rovere Date: Tue, 7 Oct 2025 10:41:17 +0200 Subject: [PATCH] Avoid unnecessary memset. Remove unnecessary memset operations on all cases in which the memory is in any case written by the kernels w/o assuming any previous value. In all other cases, leave the memset operations to preserve the correctness of the algorithms. --- .../alpaka/HGCalLayerClustersAlgoWrapper.dev.cc | 12 ------------ .../alpaka/HGCalLayerClustersSoAAlgoWrapper.dev.cc | 6 ------ 2 files changed, 18 deletions(-) diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersAlgoWrapper.dev.cc b/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersAlgoWrapper.dev.cc index bd672655308a2..f9e0aacb0beff 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersAlgoWrapper.dev.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersAlgoWrapper.dev.cc @@ -25,18 +25,6 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { CLUEAlgoAlpaka algoStandalone( queue, dc, kappa, outlierDeltaFactor, false); - // Initialize output memory to 0 - auto delta = cms::alpakatools::make_device_view(queue, outputs.delta(), size); - alpaka::memset(queue, delta, 0x0); - auto rho = cms::alpakatools::make_device_view(queue, outputs.rho(), size); - alpaka::memset(queue, rho, 0x0); - auto nearestHigher = cms::alpakatools::make_device_view(queue, outputs.nearestHigher(), size); - alpaka::memset(queue, nearestHigher, 0x0); - auto clusterIndex = cms::alpakatools::make_device_view(queue, outputs.clusterIndex(), size); - alpaka::memset(queue, clusterIndex, kInvalidClusterByte); - auto isSeed = cms::alpakatools::make_device_view(queue, outputs.isSeed(), size); - alpaka::memset(queue, isSeed, 0x0); - algoStandalone.makeClustersCMSSW(size, inputs.dim1(), inputs.dim2(), diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersSoAAlgoWrapper.dev.cc b/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersSoAAlgoWrapper.dev.cc index e1cdff5480004..52653063e2e2a 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersSoAAlgoWrapper.dev.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/alpaka/HGCalLayerClustersSoAAlgoWrapper.dev.cc @@ -155,10 +155,6 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { alpaka::memset(queue, x, 0x0); auto y = cms::alpakatools::make_device_view(queue, outputs.y(), size); alpaka::memset(queue, y, 0x0); - auto z = cms::alpakatools::make_device_view(queue, outputs.z(), size); - alpaka::memset(queue, z, 0x0); - auto seed = cms::alpakatools::make_device_view(queue, outputs.seed(), size); - alpaka::memset(queue, seed, 0x0); auto energy = cms::alpakatools::make_device_view(queue, outputs.energy(), size); alpaka::memset(queue, energy, 0x0); auto cells = cms::alpakatools::make_device_view(queue, outputs.cells(), size); @@ -167,8 +163,6 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { alpaka::memset(queue, total_weight, 0x0); auto total_weight_log = cms::alpakatools::make_device_view(queue, outputs_service.total_weight_log(), size); alpaka::memset(queue, total_weight_log, 0x0); - auto maxEnergyValue = cms::alpakatools::make_device_view(queue, outputs_service.maxEnergyValue(), size); - alpaka::memset(queue, maxEnergyValue, 0x0); auto maxEnergyIndex = cms::alpakatools::make_device_view(queue, outputs_service.maxEnergyIndex(), size); alpaka::memset(queue, maxEnergyIndex, kInvalidIndexByte);