]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
HIP/CUDA: set the paramerter value in maintain_cuda_graph instead of replaceing it...
authoruvos <redacted>
Thu, 6 Mar 2025 07:20:52 +0000 (08:20 +0100)
committerGitHub <redacted>
Thu, 6 Mar 2025 07:20:52 +0000 (08:20 +0100)
This avoids conflict with internal cuda/hip runtimes memory managment behavior.

ggml/src/ggml-cuda/ggml-cuda.cu

index b5d2c84111e60aee1cb1265fa25f84f541d5d02b..497de37be8210dfcc735bccf7d6b4b34e5c6b2f0 100644 (file)
@@ -2571,7 +2571,7 @@ static void maintain_cuda_graph(ggml_backend_cuda_context * cuda_ctx, std::vecto
         for (size_t i = 0; i < cuda_ctx->cuda_graph->num_nodes; i++) {
             if(count(ggml_cuda_cpy_fn_ptrs.begin(), ggml_cuda_cpy_fn_ptrs.end(), cuda_ctx->cuda_graph->params[i].func) > 0) {
                 char ** updated_kernel_arg_ptr = cuda_ctx->cuda_graph->updated_kernel_arg.at(k++);
-                cuda_ctx->cuda_graph->params[i].kernelParams[1] = updated_kernel_arg_ptr;
+                *(void**)cuda_ctx->cuda_graph->params[i].kernelParams[1] = *(void**)updated_kernel_arg_ptr;
                 CUDA_CHECK(cudaGraphKernelNodeSetParams(cuda_ctx->cuda_graph->nodes[i], &cuda_ctx->cuda_graph->params[i]));
             }
         }