From 0dc506317c8f1d360393a459fad729f157a17ad1 Mon Sep 17 00:00:00 2001 From: KeatonTheBot Date: Mon, 5 May 2025 16:00:40 -0500 Subject: [PATCH] Add missing texture cache size for 10 GiB DRAM option * Convert 'if' statement into 'switch' expression --- .../Image/AutoDeleteCache.cs | 30 +++++++------------ 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs b/src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs index d0bf7df8f..08fafd1cf 100644 --- a/src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs +++ b/src/Ryujinx.Graphics.Gpu/Image/AutoDeleteCache.cs @@ -56,9 +56,9 @@ namespace Ryujinx.Graphics.Gpu.Image private const ulong TextureSizeCapacity4GiB = 2 * GiB; private const ulong TextureSizeCapacity6GiB = 4 * GiB; private const ulong TextureSizeCapacity8GiB = 6 * GiB; + private const ulong TextureSizeCapacity10GiB = 10 * GiB; private const ulong TextureSizeCapacity12GiB = 12 * GiB; - private const float MemoryScaleFactor = 0.50f; private ulong _maxCacheMemoryUsage = DefaultTextureSizeCapacity; @@ -85,26 +85,16 @@ namespace Ryujinx.Graphics.Gpu.Image var cpuMemorySizeGiB = cpuMemorySize / GiB; var MaximumGpuMemoryGiB = context.Capabilities.MaximumGpuMemory / GiB; - if (cpuMemorySizeGiB < 6 && MaximumGpuMemoryGiB < 6 || context.Capabilities.MaximumGpuMemory == 0) + MaxTextureSizeCapacity = cpuMemorySizeGiB switch { - _maxCacheMemoryUsage = DefaultTextureSizeCapacity; - } - else if (cpuMemorySizeGiB < 6 && MaximumGpuMemoryGiB >= 6) - { - MaxTextureSizeCapacity = TextureSizeCapacity4GiB; - } - else if (cpuMemorySizeGiB == 6) - { - MaxTextureSizeCapacity = TextureSizeCapacity6GiB; - } - else if (cpuMemorySizeGiB == 8) - { - MaxTextureSizeCapacity = TextureSizeCapacity8GiB; - } - else - { - MaxTextureSizeCapacity = TextureSizeCapacity12GiB; - } + < 6 when MaximumGpuMemoryGiB < 6 || context.Capabilities.MaximumGpuMemory == 0 => + DefaultTextureSizeCapacity, + < 6 => TextureSizeCapacity4GiB, + 6 => TextureSizeCapacity6GiB, + 8 => TextureSizeCapacity8GiB, + 10 => TextureSizeCapacity10GiB, + _ => TextureSizeCapacity12GiB + }; var cacheMemory = (ulong)(context.Capabilities.MaximumGpuMemory * MemoryScaleFactor);