MCPcopy
hub / github.com/tinygrad/tinygrad / bind

Method bind

tinygrad/runtime/ops_amd.py:447–452  ·  view source on GitHub ↗
(self, dev:AMDDevice)

Source from the content-addressed store, hash-verified

445 return aql_cmds
446
447 def bind(self, dev:AMDDevice):
448 self.binded_device = dev
449 self.hw_page = dev.allocator.alloc(len(self._q) * 4, BufferSpec(cpu_access=True, nolru=True, uncached=True))
450 self._cmds = self._prep_aql(self._q, self.hw_page)
451 self._q = self.hw_page.cpu_view().view(fmt='I')
452 return self
453
454 def _submit(self, dev:AMDDevice):
455 cmds = self._cmds if dev == self.binded_device else self._prep_aql(self._q, dev.pm4_ibs.offset(dev.pm4_ib_alloc.alloc(len(self._q) * 4, 16)))

Callers

nothing calls this directly

Calls 5

_prep_aqlMethod · 0.95
BufferSpecClass · 0.90
allocMethod · 0.45
viewMethod · 0.45
cpu_viewMethod · 0.45

Tested by

no test coverage detected