From 5527454cdb3e15d7e2b8a6e2afcb58cb61651fd2 Mon Sep 17 00:00:00 2001 From: Dw9 Date: Tue, 12 Aug 2025 18:58:52 +0800 Subject: [PATCH] whisper : fixed crash in GPU device selection on multi-GPU systems (#3372) --- src/whisper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/whisper.cpp b/src/whisper.cpp index a3496d60..52de68c2 100644 --- a/src/whisper.cpp +++ b/src/whisper.cpp @@ -1327,7 +1327,7 @@ static ggml_backend_t whisper_backend_init_gpu(const whisper_context_params & pa for (size_t i = 0; i < ggml_backend_dev_count(); ++i) { ggml_backend_dev_t dev_cur = ggml_backend_dev_get(i); if (ggml_backend_dev_type(dev_cur) == GGML_BACKEND_DEVICE_TYPE_GPU) { - if (cnt == 0 || cnt == params.gpu_device) { + if (cnt == params.gpu_device) { dev = dev_cur; } @@ -1396,7 +1396,7 @@ static buft_list_t make_buft_list(whisper_context_params & params) { for (size_t i = 0; i < ggml_backend_dev_count(); ++i) { ggml_backend_dev_t dev = ggml_backend_dev_get(i); if (ggml_backend_dev_type(dev) == GGML_BACKEND_DEVICE_TYPE_GPU) { - if (cnt == 0 || cnt == params.gpu_device) { + if (cnt == params.gpu_device) { auto * buft = ggml_backend_dev_buffer_type(dev); if (buft) { buft_list.emplace_back(dev, buft);