test: log retained underlay debug counters
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -20,6 +20,10 @@
|
||||
#include <mbgl/util/logging.hpp>
|
||||
#include <mbgl/util/instrumentation.hpp>
|
||||
|
||||
#ifndef NDEBUG
|
||||
#include <sstream>
|
||||
#endif
|
||||
|
||||
#include <mbgl/gfx/drawable_tweaker.hpp>
|
||||
#include <mbgl/renderer/layer_tweaker.hpp>
|
||||
#include <mbgl/renderer/render_target.hpp>
|
||||
@@ -51,6 +55,30 @@ RendererObserver& nullObserver() {
|
||||
return observer;
|
||||
}
|
||||
|
||||
#ifndef NDEBUG
|
||||
constexpr uint64_t RetainedCounterLogIntervalFrames = 120;
|
||||
|
||||
void logRetainedRendererCounters() {
|
||||
const auto snapshot = particle::rendererDebugCounterSnapshot();
|
||||
if (snapshot.fullRendererFrame == 0 ||
|
||||
snapshot.fullRendererFrame % RetainedCounterLogIntervalFrames != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
std::ostringstream message;
|
||||
message << "ParticleRetained:"
|
||||
<< " frame=" << snapshot.fullRendererFrame
|
||||
<< " build=" << snapshot.retainedUnderlayBuild
|
||||
<< " reuse=" << snapshot.retainedUnderlayReuse
|
||||
<< " fallback=" << snapshot.retainedUnderlayFallback
|
||||
<< " invalidation=" << snapshot.retainedUnderlayInvalidation
|
||||
<< " staticDraw=" << snapshot.retainedUnderlayStaticGroupDraw
|
||||
<< " dynamicDraw=" << snapshot.retainedDynamicGroupDraw
|
||||
<< " particleAdvance=" << snapshot.particleSimulationAdvance;
|
||||
Log::Info(Event::Render, message.str());
|
||||
}
|
||||
#endif
|
||||
|
||||
} // namespace
|
||||
|
||||
Renderer::Impl::Impl(gfx::RendererBackend& backend_,
|
||||
@@ -590,6 +618,10 @@ void Renderer::Impl::render(const RenderTree& renderTree, const std::shared_ptr<
|
||||
observer->onDidFinishRenderingMap();
|
||||
}
|
||||
|
||||
#ifndef NDEBUG
|
||||
logRetainedRendererCounters();
|
||||
#endif
|
||||
|
||||
frameCount += 1;
|
||||
MLN_END_FRAME();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user