Vulkan Memory Allocator: VmaDetailedStatistics Struct Reference

Vulkan Memory Allocator

Loading...
Searching...
No Matches
Public Attributes | List of all members
VmaDetailedStatistics Struct Reference
Statistics

More detailed statistics than VmaStatistics. More...

`#include <vk_mem_alloc.h>`

## Public Attributes
VmaStatistics | statistics
| Basic statistics.
uint32_t | unusedRangeCount
| Number of free ranges of memory between allocations.
VkDeviceSize | allocationSizeMin
| Smallest allocation size. `VK_WHOLE_SIZE` if there are 0 allocations.
VkDeviceSize | allocationSizeMax
| Largest allocation size. 0 if there are 0 allocations.
VkDeviceSize | unusedRangeSizeMin
| Smallest empty range size. `VK_WHOLE_SIZE` if there are 0 empty ranges.
VkDeviceSize | unusedRangeSizeMax
| Largest empty range size. 0 if there are 0 empty ranges.

## Detailed Description

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:

VkDeviceSize allocationSizeAvg = detailedStats.statistics.allocationBytes / detailedStats.statistics.allocationCount;
VkDeviceSize unusedBytes = detailedStats.statistics.blockBytes - detailedStats.statistics.allocationBytes;
VkDeviceSize unusedRangeSizeAvg = unusedBytes / detailedStats.unusedRangeCount;

## Member Data Documentation

## ◆ allocationSizeMax

VkDeviceSize VmaDetailedStatistics::allocationSizeMax

Largest allocation size. 0 if there are 0 allocations.

## ◆ allocationSizeMin

VkDeviceSize VmaDetailedStatistics::allocationSizeMin

Smallest allocation size. `VK_WHOLE_SIZE` if there are 0 allocations.

## ◆ statistics

VmaStatistics VmaDetailedStatistics::statistics

Basic statistics.

## ◆ unusedRangeCount

uint32_t VmaDetailedStatistics::unusedRangeCount

Number of free ranges of memory between allocations.

## ◆ unusedRangeSizeMax

VkDeviceSize VmaDetailedStatistics::unusedRangeSizeMax

Largest empty range size. 0 if there are 0 empty ranges.

## ◆ unusedRangeSizeMin

VkDeviceSize VmaDetailedStatistics::unusedRangeSizeMin

Smallest empty range size. `VK_WHOLE_SIZE` if there are 0 empty ranges.

The documentation for this struct was generated from the following file:

- D:/PROJECTS/Vulkan Memory Allocator/REPO/include/vk_mem_alloc.h