38 {
39
40
41 log_ctx(
" heapCount %u \n", $memoryProperties.memoryHeapCount);
42 for (uint32_t i = 0; i < $memoryProperties.memoryHeapCount; i++) {
43 log_ctx(
" flags %x size %zu \n", $memoryProperties.memoryHeaps[i].flags, $memoryProperties.memoryHeaps[i].size);
44 };
45
46 log_ctx(
" heapTypeCount %u \n", $memoryProperties.memoryTypeCount);
47 for (uint32_t i = 0; i < $memoryProperties.memoryTypeCount; i++) {
48 log_ctx(
" flags %x heapIdx %u \n", $memoryProperties.memoryTypes[i].propertyFlags, $memoryProperties.memoryTypes[i].heapIndex);
49 };
50
51
52 budget = { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT };
53
54 VkPhysicalDeviceMemoryProperties2KHR memProps2 = {
55 .sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR ,
57 };
58
59 vkGetPhysicalDeviceMemoryProperties2($physicaldevice, &memProps2);
60
61 for (uint32_t heapIndex = 0; heapIndex < $memoryProperties.memoryHeapCount; heapIndex++)
62 {
63 log_ctx(
" Heap[%u] usage %zu budget %zu \n", heapIndex,
budget.heapUsage[heapIndex],
budget.heapBudget[heapIndex]);
64 };
65
69
70
71};
struct Temperance::@9 heap
VkPhysicalDeviceMemoryBudgetPropertiesEXT budget