]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commitdiff
ggml-backend : only offload from host buffers (llama/11120)
authorDiego Devesa <redacted>
Tue, 7 Jan 2025 11:38:05 +0000 (12:38 +0100)
committerGeorgi Gerganov <redacted>
Tue, 14 Jan 2025 08:38:01 +0000 (10:38 +0200)
ggml/src/ggml-backend.cpp

index e2d6c405668f4e4f444c71047ef035841dd8c41b..d034f8b7ffb9d0ae6d3b4555345c9b2f5b6c9520 100644 (file)
@@ -761,7 +761,7 @@ static int ggml_backend_sched_backend_id_from_cur(ggml_backend_sched_t sched, st
         }
         // skip ROPE since the rope freqs tensor is too small to choose a backend based on it
         // not an ideal solution
-        if (tensor->op != GGML_OP_ROPE && src->buffer != NULL && src->buffer->usage == GGML_BACKEND_BUFFER_USAGE_WEIGHTS) {
+        if (tensor->op != GGML_OP_ROPE && src->buffer != NULL && src->buffer->usage == GGML_BACKEND_BUFFER_USAGE_WEIGHTS && ggml_backend_buffer_is_host(src->buffer)) {
             int src_backend_id = ggml_backend_sched_backend_from_buffer(sched, src, tensor);
             // check if a backend with higher prio wants to offload the op
             if (src_backend_id == sched->n_backends - 1) {