From 7573c0ef4e78c1c558f475dd1cc2d8fc968d3359 Mon Sep 17 00:00:00 2001 From: nimlgen <138685161+nimlgen@users.noreply.github.com> Date: Thu, 1 May 2025 17:46:12 +0300 Subject: [PATCH] amd,nv: use .cpu_view() in bind (#10131) --- tinygrad/runtime/ops_amd.py | 4 ++-- tinygrad/runtime/ops_nv.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tinygrad/runtime/ops_amd.py b/tinygrad/runtime/ops_amd.py index c837daa54f..2375582163 100644 --- a/tinygrad/runtime/ops_amd.py +++ b/tinygrad/runtime/ops_amd.py @@ -305,7 +305,7 @@ class AMDComputeQueue(HWQueue): def bind(self, dev:AMDDevice): self.binded_device = dev self.hw_page = dev.allocator.alloc(len(self._q) * 4, BufferSpec(cpu_access=True, nolru=True, uncached=True)) - hw_view = MMIOInterface(self.hw_page.va_addr, self.hw_page.size, fmt='I') + hw_view = self.hw_page.cpu_view().view(fmt='I') for i, value in enumerate(self._q): hw_view[i] = value self.indirect_cmd = [self.pm4.PACKET3(self.pm4.PACKET3_INDIRECT_BUFFER, 2), *data64_le(self.hw_page.va_addr), @@ -376,7 +376,7 @@ class AMDCopyQueue(HWQueue): self.binded_device = dev self.hw_page = dev.allocator.alloc((qsz:=round_up(len(self._q), 8)) * 4, BufferSpec(cpu_access=True, nolru=True, uncached=True)) - hw_view = MMIOInterface(self.hw_page.va_addr, self.hw_page.size, fmt='I') + hw_view = self.hw_page.cpu_view().view(fmt='I') for i in range(qsz): hw_view[i] = self._q[i] if i < len(self._q) else 0 self.indirect_cmd = [self.sdma.SDMA_OP_INDIRECT | self.sdma.SDMA_PKT_INDIRECT_HEADER_VMID(0), *data64_le(self.hw_page.va_addr), qsz, diff --git a/tinygrad/runtime/ops_nv.py b/tinygrad/runtime/ops_nv.py index 88c8f0f02c..6a9987ec49 100644 --- a/tinygrad/runtime/ops_nv.py +++ b/tinygrad/runtime/ops_nv.py @@ -104,7 +104,7 @@ class NVCommandQueue(HWQueue[NVSignal, 'NVDevice', 'NVProgram', 'NVArgsState']): def bind(self, dev:NVDevice): self.binded_device = dev self.hw_page = dev.allocator.alloc(len(self._q) * 4, BufferSpec(cpu_access=True, nolru=True)) - hw_view = MMIOInterface(self.hw_page.va_addr, self.hw_page.size, fmt='I') + hw_view = self.hw_page.cpu_view().view(fmt='I') for i, value in enumerate(self._q): hw_view[i] = value # From now on, the queue is on the device for faster submission.