diff --git a/algo/ca/TrackingChain.cxx b/algo/ca/TrackingChain.cxx index 4b5a7ee06db1afaa620f7923682b71ea9fcd26ed..f34bc1c550ef99e29095dc78687b89db7c7cadf0 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 063615f98ebb6662e4c307f7291d30b2cb0ca68d..3410552d148f35d2eb5553b45f1bd58078264555 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 2d76b3ee1aa791c4a9f81e51176cc97c339c08b3..ceae694acc5c5f3c576aedfcd6d7d6bac153a9a5 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 e4ba22ece97a1e2a0a68861f3a11096106329e9c..674372b5ba040681167c3794df5723becb5ecbd0 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)},