From 9fed0ef938f6d23c6fcffdd5b201f99c2632a83e Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Fri, 3 Jan 2020 00:38:12 +0100 Subject: [PATCH] Flush data after queue delay is calibrated. --- client/TracyProfiler.cpp | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/client/TracyProfiler.cpp b/client/TracyProfiler.cpp index b7eab46a..65733178 100644 --- a/client/TracyProfiler.cpp +++ b/client/TracyProfiler.cpp @@ -2393,46 +2393,31 @@ void Profiler::CalibrateDelay() #else enum { Events = Iterations * 2 }; // start + end - //moodycamel::ProducerToken ptoken_detail( GetQueue() ); - //moodycamel::ConcurrentQueue::ExplicitProducer* ptoken = GetQueue().get_explicit_producer( ptoken_detail ); static const tracy::SourceLocationData __tracy_source_location { nullptr, __FUNCTION__, __FILE__, (uint32_t)__LINE__, 0 }; const auto t0 = GetTime(); for( int i=0; ihdr.type, QueueType::ZoneBegin ); MemWrite( &item->zoneBegin.time, Profiler::GetTime() ); MemWrite( &item->zoneBegin.srcloc, (uint64_t)&__tracy_source_location ); - s_producer.CommitNext( nextPtr ); + LfqProducer::CommitNext( nextPtr ); } { char* nextPtr; - auto item = s_producer.PrepareNext( nextPtr, QueueType::ZoneEnd ); + auto item = LfqProducer::PrepareNext( nextPtr, QueueType::ZoneEnd ); MemWrite( &item->hdr.type, QueueType::ZoneEnd ); MemWrite( &item->zoneEnd.time, GetTime() ); - s_producer.CommitNext( nextPtr ); + LfqProducer::CommitNext( nextPtr ); } } const auto t1 = GetTime(); const auto dt = t1 - t0; m_delay = dt / Events; - // !!! - /* - enum { Bulk = 1000 }; - moodycamel::ConsumerToken token( GetQueue() ); - int left = Events; - QueueItem item[Bulk]; - while( left != 0 ) - { - const auto sz = GetQueue().try_dequeue_bulk( token, item, std::min( left, (int)Bulk ) ); - assert( sz > 0 ); - left -= (int)sz; - } - assert( GetQueue().size_approx() == 0 ); - */ + LfqProducer::FlushData(); #endif }