|
QGroundControl
Ground Control Station for MAVLink Drones
|
Classes | |
| class | ScopedMapTimer |
| RAII timer: records mapTextures() wall time into the path's EWMA on scope exit. More... | |
Enumerations | |
| enum class | HwFallbackReason { None , NoExt , ModifierRejected , EglBadMatch , FenceTimeout , ValidateFailed , UnknownMemType , NullSample , MapFailed , VulkanNoSync , ImportUnsupported , _Count } |
| Specific cause a HW path was rejected for a sample; surfaced as a per-(path,reason) breakdown. More... | |
Functions | |
| void | recordMapFailure (HwVideoBufferPath path) noexcept |
| mapTextures() returned an invalid bundle (GPU import failed). | |
| quint64 | takeMapFailureCount (HwVideoBufferPath path) noexcept |
| quint64 | peekMapFailureCount (HwVideoBufferPath path) noexcept |
| void | recordTextureReuse (HwVideoBufferPath path) noexcept |
| Prior frame's QRhiTexture wrappers reused (decoder pool returned same native handle). | |
| quint64 | takeTextureReuseHits (HwVideoBufferPath path) noexcept |
| void | recordSyncWait (HwVideoBufferPath path, bool gpuSide) noexcept |
| GL fence sync wait; split CPU-blocking vs GPU-side. | |
| quint64 | takeSyncWaitCounts (HwVideoBufferPath path, quint64 &gpuWaits) noexcept |
Reads-and-resets CPU waits; writes GPU waits into gpuWaits. | |
| void | recordImageCacheHit (HwVideoBufferPath path) noexcept |
| Native image/texture cache hit/miss accounting. | |
| void | recordImageCacheMiss (HwVideoBufferPath path) noexcept |
| quint64 | takeImageCacheHits (HwVideoBufferPath path) noexcept |
| quint64 | takeImageCacheMisses (HwVideoBufferPath path) noexcept |
| void | recordDelivered (HwVideoBufferPath path) noexcept |
| Frames successfully delivered via this path. | |
| quint64 | peekDeliveredCount (HwVideoBufferPath path) noexcept |
| quint64 | takeDeliveredCount (HwVideoBufferPath path) noexcept |
| void | recordMapDuration (HwVideoBufferPath path, qint64 nsecs) noexcept |
| Per-path mapTextures() wall-time, fed into an EWMA; peek returns the smoothed value in microseconds. | |
| quint64 | peekMapDurationUsEwma (HwVideoBufferPath path) noexcept |
| void | recordFenceTimeout (HwVideoBufferPath path) noexcept |
| DMABuf EGL fence wait timed out (GPU stall) and fell through to the mmap barrier. | |
| quint64 | peekFenceTimeouts (HwVideoBufferPath path) noexcept |
| quint64 | takeFenceTimeouts (HwVideoBufferPath path) noexcept |
| void | recordMmapBarrierHit (HwVideoBufferPath path) noexcept |
| DMABuf mmap CPU-side completion barrier taken (no usable fence ext). | |
| quint64 | peekMmapBarrierHits (HwVideoBufferPath path) noexcept |
| quint64 | takeMmapBarrierHits (HwVideoBufferPath path) noexcept |
| void | recordExplicitFenceWait (HwVideoBufferPath path) noexcept |
| DMABuf imported the producer's dma-buf/native fence and did a GPU-side wait (skipped the mmap barrier). | |
| quint64 | takeExplicitFenceWaits (HwVideoBufferPath path) noexcept |
| void | recordFallbackReason (HwVideoBufferPath attemptedPath, HwFallbackReason reason) noexcept |
| Per-(path,reason) fallback accounting; lets a bug report show why a path demoted to CPU. | |
| quint64 | peekFallbackReason (HwVideoBufferPath attemptedPath, HwFallbackReason reason) noexcept |
| quint64 | takeFallbackReason (HwVideoBufferPath attemptedPath, HwFallbackReason reason) noexcept |
| void | recordStreamDemotion (HwVideoBufferPath negotiated) noexcept |
| One-shot-per-epoch event: a stream that negotiated a HW path demoted to CPU. Distinct from per-frame CPU counts. | |
| quint64 | takeStreamDemotions (HwVideoBufferPath negotiated) noexcept |
Per-path telemetry counters (map failures, reuse hits, sync waits) keyed by HwVideoBufferPath; atomics, thread-safe.
|
strong |
Specific cause a HW path was rejected for a sample; surfaced as a per-(path,reason) breakdown.
| Enumerator | |
|---|---|
| None | |
| NoExt | |
| ModifierRejected | |
| EglBadMatch | |
| FenceTimeout | |
| ValidateFailed | |
| UnknownMemType | |
| NullSample | |
| MapFailed | |
| VulkanNoSync | |
| ImportUnsupported | |
| _Count | |
Definition at line 17 of file GstHwPathTelemetry.h.
|
noexcept |
Definition at line 110 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::formatPathStats().
|
noexcept |
Definition at line 185 of file GstHwPathTelemetry.cc.
|
noexcept |
Definition at line 145 of file GstHwPathTelemetry.cc.
|
noexcept |
Definition at line 135 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Definition at line 50 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::formatPathStats().
|
noexcept |
Definition at line 160 of file GstHwPathTelemetry.cc.
|
noexcept |
Frames successfully delivered via this path.
Definition at line 105 of file GstHwPathTelemetry.cc.
Referenced by gst_qgc_q_video_sink_show_frame().
|
noexcept |
DMABuf imported the producer's dma-buf/native fence and did a GPU-side wait (skipped the mmap barrier).
Definition at line 170 of file GstHwPathTelemetry.cc.
|
noexcept |
Per-(path,reason) fallback accounting; lets a bug report show why a path demoted to CPU.
Definition at line 180 of file GstHwPathTelemetry.cc.
Referenced by makeHwVideoBuffer().
|
noexcept |
DMABuf EGL fence wait timed out (GPU stall) and fell through to the mmap barrier.
Definition at line 140 of file GstHwPathTelemetry.cc.
|
noexcept |
Native image/texture cache hit/miss accounting.
Definition at line 77 of file GstHwPathTelemetry.cc.
|
noexcept |
Definition at line 82 of file GstHwPathTelemetry.cc.
|
noexcept |
Per-path mapTextures() wall-time, fed into an EWMA; peek returns the smoothed value in microseconds.
Definition at line 120 of file GstHwPathTelemetry.cc.
Referenced by GstHwPathTelemetry::ScopedMapTimer::~ScopedMapTimer().
|
noexcept |
mapTextures() returned an invalid bundle (GPU import failed).
Definition at line 40 of file GstHwPathTelemetry.cc.
|
noexcept |
DMABuf mmap CPU-side completion barrier taken (no usable fence ext).
Definition at line 155 of file GstHwPathTelemetry.cc.
|
noexcept |
One-shot-per-epoch event: a stream that negotiated a HW path demoted to CPU. Distinct from per-frame CPU counts.
Definition at line 195 of file GstHwPathTelemetry.cc.
Referenced by gst_qgc_q_video_sink_show_frame().
|
noexcept |
GL fence sync wait; split CPU-blocking vs GPU-side.
Definition at line 65 of file GstHwPathTelemetry.cc.
|
noexcept |
Prior frame's QRhiTexture wrappers reused (decoder pool returned same native handle).
Definition at line 55 of file GstHwPathTelemetry.cc.
|
noexcept |
Definition at line 115 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::formatPathStats().
|
noexcept |
Definition at line 175 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Definition at line 190 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Definition at line 150 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Definition at line 87 of file GstHwPathTelemetry.cc.
|
noexcept |
Definition at line 92 of file GstHwPathTelemetry.cc.
|
noexcept |
Definition at line 45 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::formatPathStats().
|
noexcept |
Definition at line 165 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Definition at line 200 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Reads-and-resets CPU waits; writes GPU waits into gpuWaits.
Definition at line 71 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().
|
noexcept |
Definition at line 60 of file GstHwPathTelemetry.cc.
Referenced by HwBuffers::takeExtraPathStats().