From: Winston Ma Date: Wed, 27 May 2026 09:48:40 +0000 (+0800) Subject: vulkan: avoid preferring transfer queue on AMD UMA devices (llama/22455) X-Git-Tag: upstream/1.9.2~312 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=80e87ec453081f649903c70168cf3279fe455eff;p=pkg%2Fggml%2Fsources%2Fwhisper.cpp vulkan: avoid preferring transfer queue on AMD UMA devices (llama/22455) --- diff --git a/ggml/src/ggml-vulkan/ggml-vulkan.cpp b/ggml/src/ggml-vulkan/ggml-vulkan.cpp index 18d7ceda..f45b9cfd 100644 --- a/ggml/src/ggml-vulkan/ggml-vulkan.cpp +++ b/ggml/src/ggml-vulkan/ggml-vulkan.cpp @@ -5841,8 +5841,12 @@ static vk_device ggml_vk_get_device(size_t idx) { ggml_vk_load_shaders(device); - // Only use transfer queue on AMD non-GCN, when the graphics queue is not enabled - const bool prefers_transfer_queue = device->vendor_id == VK_VENDOR_ID_AMD && device->architecture != AMD_GCN && !allow_graphics_queue; + // Prefer a dedicated transfer queue on AMD dGPUs (non-GCN) when graphics queue use is disabled. + const bool prefers_transfer_queue = + device->vendor_id == VK_VENDOR_ID_AMD && + device->architecture != AMD_GCN && + !device->uma && + !allow_graphics_queue; if (!device->single_queue) { const uint32_t transfer_queue_index = compute_queue_family_index == transfer_queue_family_index ? 1 : 0;