From 57398704a808e4b45b2c82bfdf8026087d598355 Mon Sep 17 00:00:00 2001 From: Felix Schlepper Date: Tue, 10 Jun 2025 11:19:15 +0200 Subject: [PATCH] ITS: after processing cleanup memory remnants Signed-off-by: Felix Schlepper --- .../ITS/tracking/include/ITStracking/TrackingInterface.h | 1 + Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx | 5 +++++ .../ITS/workflow/include/ITSWorkflow/TrackerSpec.h | 1 + Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx | 9 +++++++-- 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingInterface.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingInterface.h index cff6d215e5e3b..732efcb9e0861 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingInterface.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingInterface.h @@ -59,6 +59,7 @@ class ITSTrackingInterface void initialise(); void run(framework::ProcessingContext& pc); void printSummary() const; + void end(); virtual void updateTimeDependentParams(framework::ProcessingContext& pc); virtual void finaliseCCDB(framework::ConcreteDataMatcher& matcher, void* obj); diff --git a/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx b/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx index c70108b4f8a30..b6b4796690905 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx @@ -449,6 +449,11 @@ void ITSTrackingInterface::printSummary() const mTracker->printSummary(); } +void ITSTrackingInterface::end() +{ + mTimeFrame->wipe(); +} + void ITSTrackingInterface::setTraitsFromProvider(VertexerTraits* vertexerTraits, TrackerTraits7* trackerTraits, TimeFrame7* frame) diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h index 9160df6fc49fd..27c4174fab244 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h @@ -48,6 +48,7 @@ class TrackerDPL : public framework::Task void stop() final; private: + void end(); void updateTimeDependentParams(framework::ProcessingContext& pc); std::unique_ptr mRecChain = nullptr; std::unique_ptr mChainITS = nullptr; diff --git a/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx index abbb88aea42fa..9f84ee6522567 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx @@ -48,8 +48,7 @@ void TrackerDPL::init(InitContext& ic) void TrackerDPL::stop() { - mITSTrackingInterface.printSummary(); - LOGF(info, "CPU Reconstruction total timing: Cpu: %.3e Real: %.3e s in %d slots", mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); + end(); } void TrackerDPL::run(ProcessingContext& pc) @@ -70,6 +69,12 @@ void TrackerDPL::finaliseCCDB(ConcreteDataMatcher& matcher, void* obj) void TrackerDPL::endOfStream(EndOfStreamContext& ec) { + end(); +} + +void TrackerDPL::end() +{ + mITSTrackingInterface.end(); mITSTrackingInterface.printSummary(); LOGF(info, "ITS CA-Tracker total timing: Cpu: %.3e Real: %.3e s in %d slots", mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); }