From 881b0f415858884e49016545b3121fa9a3409f09 Mon Sep 17 00:00:00 2001 From: "s.zharko@gsi.de" <s.zharko@gsi.de> Date: Wed, 25 Oct 2023 12:42:55 +0200 Subject: [PATCH] fixes --- algo/ca/TrackingChain.cxx | 17 ++++++----------- algo/ca/core/utils/CaMonitor.h | 4 ++-- algo/ca/core/utils/CaTrackingMonitor.h | 8 ++++---- algo/global/Reco.cxx | 2 +- 4 files changed, 13 insertions(+), 18 deletions(-) diff --git a/algo/ca/TrackingChain.cxx b/algo/ca/TrackingChain.cxx index 4b5a7ee06d..f34bc1c550 100644 --- a/algo/ca/TrackingChain.cxx +++ b/algo/ca/TrackingChain.cxx @@ -56,39 +56,34 @@ void TrackingChain::Init() // TrackingChain::Return_t TrackingChain::Run(Input_t recoResults) { - //xpu::scoped_timer t_("CA"); // TODO: pass timings to monitoring for throughput? + xpu::scoped_timer t_("CA"); // TODO: pass timings to monitoring for throughput? fCaMonitorData.Reset(); - fCaMonitorData.StartTimer(ca::ETimer::Tracking); // ----- Init input data --------------------------------------------------------------------------------------------- - fCaMonitorData.StartTimer(ca::ETimer::PrepareInput); this->PrepareInput(recoResults); - fCaMonitorData.StopTimer(ca::ETimer::PrepareInput); // ----- Run reconstruction ------------------------------------------------------------------------------------------ fCaFramework.SetMonitorData(fCaMonitorData); - fCaFramework.fTrackFinder.FindTracks(); fCaMonitorData = fCaFramework.GetMonitorData(); - L_(info) << "Timeslice contains " << fCaMonitorData.GetCounterValue(ca::ECounter::RecoTrack) << " tracks"; + fCaFramework.fTrackFinder.FindTracks(); + L_(info) << "TrackingChain: Timeslice contains " << fCaMonitorData.GetCounterValue(ca::ECounter::RecoTrack) + << " tracks, the FindTracks routine ran " << fCaMonitorData.GetTimer(ca::ETimer::FindTracks).GetTotal() + << " s"; // ----- Init output data -------------------------------------------------------------------------------------------- // FIXME: SZh 22.10.2023: Provide a class for the tracking output data (tracks, hit indices and monitor) fCaMonitor.AddMonitorData(fCaMonitorData); - fCaMonitorData.StopTimer(ca::ETimer::Tracking); return std::make_pair(std::move(fCaFramework.fRecoTracks), fCaMonitorData); } // --------------------------------------------------------------------------------------------------------------------- // -void TrackingChain::Finalize() -{ /*L_(info) << fCaMonitor.ToString();*/ -} +void TrackingChain::Finalize() { L_(info) << fCaMonitor.ToString(); } // --------------------------------------------------------------------------------------------------------------------- // void TrackingChain::PrepareInput(Input_t recoResults) { - //L_(info) << "TOF TEST: " << tof::Config::GetTofTrackingStation(0x00008036); <- access to the TOF tracking station fNofHitKeys = 0; int nHitsTot = recoResults.stsHits.NElements() + recoResults.tofHits.NElements(); L_(info) << "Tracking chain: input has " << nHitsTot << " hits"; diff --git a/algo/ca/core/utils/CaMonitor.h b/algo/ca/core/utils/CaMonitor.h index 063615f98e..3410552d14 100644 --- a/algo/ca/core/utils/CaMonitor.h +++ b/algo/ca/core/utils/CaMonitor.h @@ -158,7 +158,7 @@ namespace cbm::algo::ca msg << "\n----- Timers:\n"; msg << setw(widthKey) << left << "Key" << ' '; msg << setw(width) << left << "N Calls" << ' '; - msg << setw(width) << left << "Average [s]" << ' '; + //msg << setw(width) << left << "Average [s]" << ' '; msg << setw(width) << left << "Min [s]" << ' '; msg << setw(width) << left << "Max [s]" << ' '; msg << setw(width) << left << "Total [s]" << '\n'; @@ -167,7 +167,7 @@ namespace cbm::algo::ca const Timer& timer = fMonitorData.GetTimer(static_cast<ETimerKey>(iKey)); msg << setw(widthKey) << faTimerNames[iKey] << ' '; msg << setw(width) << timer.GetNofCalls() << ' '; - msg << setw(width) << timer.GetAverage() << ' '; + //msg << setw(width) << timer.GetAverage() << ' '; msg << setw(width) << timer.GetMin() << ' '; msg << setw(width) << timer.GetMax() << ' '; msg << setw(width) << timer.GetTotal() << '\n'; diff --git a/algo/ca/core/utils/CaTrackingMonitor.h b/algo/ca/core/utils/CaTrackingMonitor.h index 2d76b3ee1a..ceae694acc 100644 --- a/algo/ca/core/utils/CaTrackingMonitor.h +++ b/algo/ca/core/utils/CaTrackingMonitor.h @@ -36,8 +36,8 @@ namespace cbm::algo::ca /// \brief Timer keys for the CA algo monitor enum class ETimer { - Tracking, - PrepareInput, + //Tracking, + //PrepareInput, FindTracks, TrackFinder, TrackFitter, @@ -66,8 +66,8 @@ namespace cbm::algo::ca SetCounterName(ECounter::UndefinedMuchHit, "undefined MuCh hits"); SetCounterName(ECounter::UndefinedTrdHit, "undefined TRD hits"); SetCounterName(ECounter::UndefinedTofHit, "undefined TOF hits"); - SetTimerName(ETimer::Tracking, "full tracking"); - SetTimerName(ETimer::PrepareInput, "input data initialization"); + //SetTimerName(ETimer::Tracking, "full tracking"); + //SetTimerName(ETimer::PrepareInput, "input data initialization"); SetTimerName(ETimer::FindTracks, "find tracks procedure"); SetTimerName(ETimer::TrackFinder, "track finder"); SetTimerName(ETimer::TrackFitter, "track fitter"); diff --git a/algo/global/Reco.cxx b/algo/global/Reco.cxx index e4ba22ece9..674372b5ba 100644 --- a/algo/global/Reco.cxx +++ b/algo/global/Reco.cxx @@ -341,7 +341,7 @@ void Reco::QueueTrackingMetrics(const ca::TrackingMonitorData& monitor) if (!HasMonitor()) { return; } GetMonitor().QueueMetric("cbmreco", {{"hostname", fles::system::current_hostname()}, {"child", Opts().ChildId()}}, - {{"caRecoTimeTotal", monitor.GetTimer(ca::ETimer::Tracking).GetTotal()}, + {{"caRecoTimeTotal", monitor.GetTimer(ca::ETimer::FindTracks).GetTotal()}, {"caTrackFinderTime", monitor.GetTimer(ca::ETimer::TrackFinder).GetTotal()}, {"caTrackFitterTime", monitor.GetTimer(ca::ETimer::TrackFitter).GetTotal()}, {"caNofRecoTracks", monitor.GetCounterValue(ca::ECounter::RecoTrack)}, -- GitLab