(self, a: Tensor)
| 60 | for src in ast.src: |
| 61 | if (ret:=self._find_op(src, op)) is not None: return ret |
| 62 | def _schedule_render(self, a: Tensor): |
| 63 | linear, _ = a.linear_with_vars() |
| 64 | for si in linear.src: |
| 65 | ast = si.src[0] |
| 66 | if ast.op is Ops.SINK: |
| 67 | renderer = Device[si.src[1].buffer.device].renderer |
| 68 | prg = to_program(ast, renderer) |
| 69 | return tuple(prg.src[2].src) |
| 70 | |
| 71 | def _assert(self, dtype: DType, a: Tensor): |
| 72 | uops = self._schedule_render(a) |
no test coverage detected