pub struct FrameSubmitTimings {
pub graph_build: Duration,
pub command_encode: Duration,
pub source_acquire: Duration,
pub queue_lock_wait: Duration,
pub queue_submit: Duration,
pub lease_retire: Duration,
pub complete: Duration,
}Expand description
Where one frame’s graph construction and submission spent its time.
The fields are consecutive spans of one frame on one thread, so they sum to it. A host that reports a single submit cost cannot tell a slow graph from a contended queue; these separate the two.
graph_build belongs to whoever built the RenderGraph; the renderer’s
timed submissions write every later span and leave it as they found it.
Fields§
§graph_build: DurationEffect validation, source availability, and render-graph construction.
command_encode: DurationEncoding source conversion, graph, and readback commands.
source_acquire: DurationNative acquire and layout transition for imported decoder surfaces.
queue_lock_wait: DurationBlocked on the queue lock shared with the native decoder.
queue_submit: DurationInside wgpu’s queue submit.
lease_retire: DurationReleasing decoder surfaces whose submission has completed.
complete: DurationBuilding the readback handle and returning pooled textures.
Implementations§
Trait Implementations§
Source§impl Clone for FrameSubmitTimings
impl Clone for FrameSubmitTimings
impl Copy for FrameSubmitTimings
Source§impl Debug for FrameSubmitTimings
impl Debug for FrameSubmitTimings
Source§impl Default for FrameSubmitTimings
impl Default for FrameSubmitTimings
impl Eq for FrameSubmitTimings
Source§impl PartialEq for FrameSubmitTimings
impl PartialEq for FrameSubmitTimings
impl StructuralPartialEq for FrameSubmitTimings
Auto Trait Implementations§
impl Freeze for FrameSubmitTimings
impl RefUnwindSafe for FrameSubmitTimings
impl Send for FrameSubmitTimings
impl Sync for FrameSubmitTimings
impl Unpin for FrameSubmitTimings
impl UnsafeUnpin for FrameSubmitTimings
impl UnwindSafe for FrameSubmitTimings
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.