Direct3D 12 Memory Allocator
|
Statistics of current memory usage and available budget for a specific memory segment group. More...
#include <D3D12MemAlloc.h>
Public Attributes | |
Statistics | Stats |
Statistics fetched from the library. | |
UINT64 | UsageBytes |
Estimated current memory usage of the program. | |
UINT64 | BudgetBytes |
Estimated amount of memory available to the program. | |
Statistics of current memory usage and available budget for a specific memory segment group.
These are fast to calculate. See function D3D12MA::Allocator::GetBudget().
UINT64 D3D12MA::Budget::BudgetBytes |
Estimated amount of memory available to the program.
Fetched from system using IDXGIAdapter3::QueryVideoMemoryInfo
if possible.
It might be different (most probably smaller) than memory capacity returned by D3D12MA::Allocator::GetMemoryCapacity() due to factors external to the program, decided by the operating system. Difference BudgetBytes - UsageBytes
is the amount of additional memory that can probably be allocated without problems. Exceeding the budget may result in various problems.
Statistics D3D12MA::Budget::Stats |
Statistics fetched from the library.
UINT64 D3D12MA::Budget::UsageBytes |
Estimated current memory usage of the program.
Fetched from system using IDXGIAdapter3::QueryVideoMemoryInfo
if possible.
It might be different than BlockBytes
(usually higher) due to additional implicit objects also occupying the memory, like swapchain, pipeline state objects, descriptor heaps, command lists, or heaps and resources allocated outside of this library, if any.