Skip to content

Commit 59377a6

Browse files
ggml-backend: fix async set/get fallback sync (#19179)
1 parent 1239267 commit 59377a6

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

ggml/src/ggml-backend.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,7 @@ void ggml_backend_tensor_set_async(ggml_backend_t backend, struct ggml_tensor *
258258
GGML_ASSERT(offset + size <= ggml_nbytes(tensor) && "tensor write out of bounds");
259259

260260
if (backend->iface.set_tensor_async == NULL) {
261+
ggml_backend_synchronize(backend);
261262
ggml_backend_tensor_set(tensor, data, offset, size);
262263
} else {
263264
backend->iface.set_tensor_async(backend, tensor, data, offset, size);
@@ -271,6 +272,7 @@ void ggml_backend_tensor_get_async(ggml_backend_t backend, const struct ggml_ten
271272
GGML_ASSERT(offset + size <= ggml_nbytes(tensor) && "tensor read out of bounds");
272273

273274
if (backend->iface.get_tensor_async == NULL) {
275+
ggml_backend_synchronize(backend);
274276
ggml_backend_tensor_get(tensor, data, offset, size);
275277
} else {
276278
backend->iface.get_tensor_async(backend, tensor, data, offset, size);

0 commit comments

Comments
 (0)