Commit 19f31e61b for llama.cpp

commit 19f31e61b0fc09a70bec1da54200072f29541a39
Author: Ruben Ortlam <rortlam@redhat.com>
Date:   Sat Nov 14 23:35:54 2026 +0100

    vulkan: use GPU copies on UMA with uncached memory on Intel (#32024)

diff --git a/ggml/src/ggml-vulkan/ggml-vulkan-buffers.cpp b/ggml/src/ggml-vulkan/ggml-vulkan-buffers.cpp
index 9c6edb569..ed814b59f 100644
--- a/ggml/src/ggml-vulkan/ggml-vulkan-buffers.cpp
+++ b/ggml/src/ggml-vulkan/ggml-vulkan-buffers.cpp
@@ -712,8 +712,8 @@ static bool ggml_vk_buffer_host_read_direct(const vk_buffer & buf) {
     // If the device is not an UMA device the memory is host-accessible through rebar. While writing
     // through PCIe is sufficient fast reading back data from PCIe is slower than going through
     // the HW device to host copy path.
-    // AMD UMA: uncached host-visible memory is write-combined, CPU reads are slow
-    const bool slow_host_read = buf->device->vendor_id == VK_VENDOR_ID_AMD &&
+    // UMA: uncached host-visible memory is write-combined, CPU reads are slow (except Nvidia, based on benchmarks)
+    const bool slow_host_read = buf->device->vendor_id != VK_VENDOR_ID_NVIDIA &&
                                 !(buf->memory_property_flags & vk::MemoryPropertyFlagBits::eHostCached);
     return (buf->memory_property_flags & vk::MemoryPropertyFlagBits::eHostVisible) && buf->device->uma && !slow_host_read;
 }