Struct vk_mem_alloc::ffi::VmaDetailedStatistics
source · [−]#[repr(C)]pub struct VmaDetailedStatistics {
pub statistics: VmaStatistics,
pub unusedRangeCount: u32,
pub allocationSizeMin: DeviceSize,
pub allocationSizeMax: DeviceSize,
pub unusedRangeSizeMin: DeviceSize,
pub unusedRangeSizeMax: DeviceSize,
}
Expand description
\brief More detailed statistics than #VmaStatistics.
These are slower to calculate. Use for debugging purposes. See functions: vmaCalculateStatistics(), vmaCalculatePoolStatistics().
Previous version of the statistics API provided averages, but they have been removed because they can be easily calculated as:
\code VkDeviceSize allocationSizeAvg = detailedStats.statistics.allocationBytes / detailedStats.statistics.allocationCount; VkDeviceSize unusedBytes = detailedStats.statistics.blockBytes - detailedStats.statistics.allocationBytes; VkDeviceSize unusedRangeSizeAvg = unusedBytes / detailedStats.unusedRangeCount; \endcode
Fields
statistics: VmaStatistics
Basic statistics.
unusedRangeCount: u32
Number of free ranges of memory between allocations.
allocationSizeMin: DeviceSize
Smallest allocation size. VK_WHOLE_SIZE
if there are 0 allocations.
allocationSizeMax: DeviceSize
Largest allocation size. 0 if there are 0 allocations.
unusedRangeSizeMin: DeviceSize
Smallest empty range size. VK_WHOLE_SIZE
if there are 0 empty ranges.
unusedRangeSizeMax: DeviceSize
Largest empty range size. 0 if there are 0 empty ranges.
Auto Trait Implementations
impl RefUnwindSafe for VmaDetailedStatistics
impl Send for VmaDetailedStatistics
impl Sync for VmaDetailedStatistics
impl Unpin for VmaDetailedStatistics
impl UnwindSafe for VmaDetailedStatistics
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more