]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commitdiff
whisper : fixed crash in GPU device selection on multi-GPU systems (#3372)
authorDw9 <redacted>
Tue, 12 Aug 2025 10:58:52 +0000 (18:58 +0800)
committerGitHub <redacted>
Tue, 12 Aug 2025 10:58:52 +0000 (13:58 +0300)
src/whisper.cpp

index a3496d604a6cb872c2398c08ecde1e74de523840..52de68c2b128336b0e303c45caab4685c84d3aec 100644 (file)
@@ -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);