mirror of
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
synced 2024-11-05 12:20:07 +00:00
Implemented vmaCalculateVirtualBlockStats
This commit is contained in:
parent
72949fa9d8
commit
9a091e8ccb
@ -6891,6 +6891,10 @@ public:
|
||||
{
|
||||
m_Metadata->SetAllocationUserData(offset, userData);
|
||||
}
|
||||
void CalculateStats(VmaStatInfo& outStatInfo) const
|
||||
{
|
||||
m_Metadata->CalcAllocationStatInfo(outStatInfo);
|
||||
}
|
||||
|
||||
private:
|
||||
VmaBlockMetadata* m_Metadata;
|
||||
@ -18403,7 +18407,10 @@ VMA_CALL_PRE void VMA_CALL_POST vmaSetVirtualAllocationUserData(VmaVirtualBlock
|
||||
VMA_CALL_PRE void VMA_CALL_POST vmaCalculateVirtualBlockStats(VmaVirtualBlock VMA_NOT_NULL virtualBlock,
|
||||
VmaStatInfo* VMA_NOT_NULL pStatInfo)
|
||||
{
|
||||
VMA_ASSERT(0 && "TODO implement");
|
||||
VMA_ASSERT(virtualBlock != VK_NULL_HANDLE && pStatInfo != VMA_NULL);
|
||||
VMA_DEBUG_LOG("vmaCalculateVirtualBlockStats");
|
||||
VMA_DEBUG_GLOBAL_MUTEX_LOCK;
|
||||
virtualBlock->CalculateStats(*pStatInfo);
|
||||
}
|
||||
|
||||
VMA_CALL_PRE void VMA_CALL_POST vmaBuildVirtualBlockStatsString(VmaVirtualBlock VMA_NOT_NULL virtualBlock,
|
||||
|
@ -2747,16 +2747,16 @@ static void TestVirtualBlocks()
|
||||
TEST(alloc2Offset < blockSize);
|
||||
TEST(alloc2Offset + 4 * MEGABYTE <= alloc0Offset || alloc0Offset + 8 * MEGABYTE <= alloc2Offset); // Check if they don't overlap.
|
||||
|
||||
#if 0
|
||||
// # Calculate statistics
|
||||
|
||||
StatInfo statInfo = {};
|
||||
block->CalculateStats(&statInfo);
|
||||
CHECK_BOOL(statInfo.AllocationCount == 2);
|
||||
CHECK_BOOL(statInfo.BlockCount == 1);
|
||||
CHECK_BOOL(statInfo.UsedBytes == blockSize);
|
||||
CHECK_BOOL(statInfo.UnusedBytes + statInfo.UsedBytes == blockSize);
|
||||
VmaStatInfo statInfo = {};
|
||||
vmaCalculateVirtualBlockStats(block, &statInfo);
|
||||
TEST(statInfo.allocationCount == 2);
|
||||
TEST(statInfo.blockCount == 1);
|
||||
TEST(statInfo.usedBytes == blockSize);
|
||||
TEST(statInfo.unusedBytes + statInfo.usedBytes == blockSize);
|
||||
|
||||
#if 0
|
||||
// # Generate JSON dump
|
||||
|
||||
WCHAR* json = nullptr;
|
||||
|
Loading…
Reference in New Issue
Block a user