mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-10-09 22:53:32 +00:00
[TEST] VMA budget fix
This commit is contained in:
@@ -1504,7 +1504,10 @@ void Device::TickAllocatorFrame() const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
u64 Device::GetDeviceMemoryUsage() const {
|
u64 Device::GetDeviceMemoryUsage() const {
|
||||||
VkPhysicalDeviceMemoryBudgetPropertiesEXT budget;
|
if (!extensions.memory_budget) {
|
||||||
|
return GetMemoryBudgetInfo().allocation_bytes;
|
||||||
|
}
|
||||||
|
VkPhysicalDeviceMemoryBudgetPropertiesEXT budget{};
|
||||||
budget.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT;
|
budget.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT;
|
||||||
budget.pNext = nullptr;
|
budget.pNext = nullptr;
|
||||||
physical.GetMemoryProperties(&budget);
|
physical.GetMemoryProperties(&budget);
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ namespace Vulkan {
|
|||||||
vk::Image MemoryAllocator::CreateImage(const VkImageCreateInfo &ci) const
|
vk::Image MemoryAllocator::CreateImage(const VkImageCreateInfo &ci) const
|
||||||
{
|
{
|
||||||
const VmaAllocationCreateInfo alloc_ci = {
|
const VmaAllocationCreateInfo alloc_ci = {
|
||||||
.flags = VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT,
|
.flags = device.CanReportMemoryUsage() ? VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT : 0u,
|
||||||
.usage = VMA_MEMORY_USAGE_AUTO_PREFER_DEVICE,
|
.usage = VMA_MEMORY_USAGE_AUTO_PREFER_DEVICE,
|
||||||
.requiredFlags = 0,
|
.requiredFlags = 0,
|
||||||
.preferredFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
|
.preferredFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
|
||||||
@@ -162,7 +162,8 @@ namespace Vulkan {
|
|||||||
&& device.GetDriverID() == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA)
|
&& device.GetDriverID() == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA)
|
||||||
? VK_MEMORY_PROPERTY_HOST_CACHED_BIT : 0;
|
? VK_MEMORY_PROPERTY_HOST_CACHED_BIT : 0;
|
||||||
const VmaAllocationCreateInfo alloc_ci = {
|
const VmaAllocationCreateInfo alloc_ci = {
|
||||||
.flags = VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT | MemoryUsageVmaFlags(usage),
|
.flags = (device.CanReportMemoryUsage() ? VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT : 0u) |
|
||||||
|
MemoryUsageVmaFlags(usage),
|
||||||
.usage = MemoryUsageVma(usage),
|
.usage = MemoryUsageVma(usage),
|
||||||
.requiredFlags = 0,
|
.requiredFlags = 0,
|
||||||
.preferredFlags = MemoryUsagePreferredVmaFlags(usage) | anv_flags,
|
.preferredFlags = MemoryUsagePreferredVmaFlags(usage) | anv_flags,
|
||||||
|
|||||||
Reference in New Issue
Block a user