From fe26d3fefedac3e149f5f490d33c5c684e09c772 Mon Sep 17 00:00:00 2001 From: nimlgen <138685161+nimlgen@users.noreply.github.com> Date: Tue, 28 May 2024 20:49:29 +0300 Subject: [PATCH] nv sync before free for binded commands (#4759) * nv sync before free for binded commands * shorter comment --- tinygrad/runtime/ops_nv.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tinygrad/runtime/ops_nv.py b/tinygrad/runtime/ops_nv.py index eb48caf39b..b04f804158 100644 --- a/tinygrad/runtime/ops_nv.py +++ b/tinygrad/runtime/ops_nv.py @@ -86,7 +86,9 @@ class NVCompiler(Compiler): class HWQueue: def __init__(self): self.q, self.binded_device, self.next_cmd_index = [], None, 0 def __del__(self): - if self.binded_device is not None: self.binded_device._gpu_free(self.hw_page) + if self.binded_device is not None: + self.binded_device.synchronize() # Synchronize to ensure the buffer is no longer in use. + self.binded_device._gpu_free(self.hw_page) def ptr(self) -> int: return self.next_cmd_index