From 09bfb8c10a532dfb805b2f5f6a641c4dfa562cba Mon Sep 17 00:00:00 2001 From: nimlgen <138685161+nimlgen@users.noreply.github.com> Date: Wed, 5 Jun 2024 23:34:33 +0300 Subject: [PATCH] nv sync program copies to other exection (#4845) --- tinygrad/runtime/ops_nv.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tinygrad/runtime/ops_nv.py b/tinygrad/runtime/ops_nv.py index ae80ed6ebb..017444c1fc 100644 --- a/tinygrad/runtime/ops_nv.py +++ b/tinygrad/runtime/ops_nv.py @@ -243,6 +243,8 @@ class NVProgram: self.lib_sz = round_up(round_up(self.program.nbytes, 128) + round_up(0 if self.global_init is None else self.global_init.nbytes, 128) + sum([round_up(x.nbytes, 128) for i,x in constant_buffers_data.items()]), 0x1000) self.lib_gpu = self.device.allocator.alloc(self.lib_sz) + + HWComputeQueue().wait(self.device.timeline_signal, self.device.timeline_value - 1).submit(self.device) for st in range(0, len(self.program), 4095): HWComputeQueue().copy_from_cpu(self.lib_gpu.base+st*4, self.program[st:st+4095]).submit(self.device)