]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
fix : cuda order of synchronization when setting a buffer (ggml/679)
authorErik Scholz <redacted>
Fri, 5 Jan 2024 15:00:00 +0000 (16:00 +0100)
committerGeorgi Gerganov <redacted>
Thu, 11 Jan 2024 07:39:05 +0000 (09:39 +0200)
* fix : cuda order of synchronization when setting a buffer

* also sync before memcpy

---------

Co-authored-by: slaren <redacted>
ggml-cuda.cu

index e26260a35bcbd2d40403a69fd9dcaaf2631b41c4..900f7ba4afac4ec43a44487e6138df7051e36dd6 100644 (file)
@@ -10184,8 +10184,8 @@ static void ggml_backend_cuda_buffer_set_tensor(ggml_backend_buffer_t buffer, gg
 
     ggml_cuda_set_device(ctx->device);
     CUDA_CHECK(cudaDeviceSynchronize());
-
     CUDA_CHECK(cudaMemcpy((char *)tensor->data + offset, data, size, cudaMemcpyHostToDevice));
+    CUDA_CHECK(cudaDeviceSynchronize());
 }
 
 static void ggml_backend_cuda_buffer_get_tensor(ggml_backend_buffer_t buffer, const ggml_tensor * tensor, void * data, size_t offset, size_t size) {