Handle aten.conv_transpose1d: (input, weight, bias, stride, padding, output_padding, groups, dilation).
(P: MLXProgramBuilder, n: Node)
| 2619 | |
| 2620 | @REGISTRY.register(target=[torch.ops.aten.conv_transpose1d.default]) |
| 2621 | def _conv_transpose1d_handler(P: MLXProgramBuilder, n: Node) -> Slot: |
| 2622 | """Handle aten.conv_transpose1d: (input, weight, bias, stride, padding, output_padding, groups, dilation).""" |
| 2623 | require_args(n.args, 2, 8, "aten.conv_transpose1d") |
| 2624 | require_kwargs(P.kwargs(n), set(), "aten.conv_transpose1d") |
| 2625 | x_node, w_node = n.args[0:2] |
| 2626 | bias_node = n.args[2] if len(n.args) > 2 else None |
| 2627 | groups = n.args[6] if len(n.args) > 6 else 1 |
| 2628 | |
| 2629 | stride = _normalize_conv_param(n.args[3] if len(n.args) > 3 else 1, 1, 1) |
| 2630 | padding = _normalize_conv_param(n.args[4] if len(n.args) > 4 else 0, 1, 0) |
| 2631 | output_padding = _normalize_conv_param(n.args[5] if len(n.args) > 5 else 0, 1, 0) |
| 2632 | dilation = _normalize_conv_param(n.args[7] if len(n.args) > 7 else 1, 1, 1) |
| 2633 | |
| 2634 | return _emit_conv_transpose( |
| 2635 | P, |
| 2636 | n, |
| 2637 | x_node, |
| 2638 | w_node, |
| 2639 | bias_node, |
| 2640 | stride, |
| 2641 | padding, |
| 2642 | dilation, |
| 2643 | output_padding, |
| 2644 | groups, |
| 2645 | ndim=1, |
| 2646 | ) |
| 2647 | |
| 2648 | |
| 2649 | @REGISTRY.register(target=[torch.ops.aten.conv_transpose2d.input]) |
nothing calls this directly
no test coverage detected