diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 01:53:54 -0500 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 01:53:54 -0500 |
| commit | 9c8af5b2128884d0ef9644286d3ab08ee8e5df20 (patch) | |
| tree | 381f3b8c0cd25b0017a40ca58b9c6e92d85c6dee /src/video_core/vulkan_common | |
| parent | 37908985af9d080bc4795c16c8e49c7ef1d2a98b (diff) | |
vulkan: keep the stream buffer within a small iGPU heap
The stream buffer prefers device-local host-visible memory. On a Radeon
780M that is a 256 MiB heap with a 243 MiB budget, and the 256 MiB
buffer alone kept it over budget for the whole session ("VMA heap 2:
usage 256 MiB of budget 243 MiB"). On integrated GPUs whose
device-local host-visible heap is no bigger than the stream buffer, use
three quarters of the heap instead (192 MiB there).
Radeon 780M, Mario Kart World title screen: heap 2 at 192 of 243 MiB,
picture and frame rate unchanged.
Diffstat (limited to 'src/video_core/vulkan_common')
| -rw-r--r-- | src/video_core/vulkan_common/vulkan_device.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/vulkan_common/vulkan_device.h b/src/video_core/vulkan_common/vulkan_device.h index d8524f6575..eb7cb15dc8 100644 --- a/src/video_core/vulkan_common/vulkan_device.h +++ b/src/video_core/vulkan_common/vulkan_device.h @@ -928,6 +928,11 @@ FN_MAX_LIMIT_LIST return 0x00010300U; } + /// Returns true for an integrated GPU (its device-local memory is system memory). + bool IsIntegrated() const { + return is_integrated; + } + /// Returns true when a known debugging tool is attached. bool HasDebuggingToolAttached() const { return has_renderdoc || has_nsight_graphics || has_radeon_gpu_profiler; |
