Spaces:
Running
Running
Erik Scholz
slaren
commited on
fix : cuda order of synchronization when setting a buffer (ggml/679)
Browse files* fix : cuda order of synchronization when setting a buffer
* also sync before memcpy
---------
Co-authored-by: slaren <[email protected]>
- extra/sync-ggml.last +1 -1
- ggml-cuda.cu +1 -1
extra/sync-ggml.last
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
|
|
|
|
| 1 |
+
3eace58911ea8d2cf35defdc59848d99b91a57f5
|
ggml-cuda.cu
CHANGED
|
@@ -9689,8 +9689,8 @@ static void ggml_backend_cuda_buffer_set_tensor(ggml_backend_buffer_t buffer, gg
|
|
| 9689 |
|
| 9690 |
ggml_cuda_set_device(ctx->device);
|
| 9691 |
CUDA_CHECK(cudaDeviceSynchronize());
|
| 9692 |
-
|
| 9693 |
CUDA_CHECK(cudaMemcpy((char *)tensor->data + offset, data, size, cudaMemcpyHostToDevice));
|
|
|
|
| 9694 |
}
|
| 9695 |
|
| 9696 |
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) {
|
|
|
|
| 9689 |
|
| 9690 |
ggml_cuda_set_device(ctx->device);
|
| 9691 |
CUDA_CHECK(cudaDeviceSynchronize());
|
|
|
|
| 9692 |
CUDA_CHECK(cudaMemcpy((char *)tensor->data + offset, data, size, cudaMemcpyHostToDevice));
|
| 9693 |
+
CUDA_CHECK(cudaDeviceSynchronize());
|
| 9694 |
}
|
| 9695 |
|
| 9696 |
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) {
|