torch-rb 0.14.1 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -185,7 +185,7 @@
185
185
  dispatch:
186
186
  CompositeExplicitAutograd: sym_constrain_range
187
187
 
188
- - func: sym_constrain_range_for_size(Scalar size, *, int? min, int? max) -> ()
188
+ - func: sym_constrain_range_for_size(Scalar size, *, int? min=None, int? max=None) -> ()
189
189
  dispatch:
190
190
  CompositeExplicitAutograd: sym_constrain_range_for_size
191
191
 
@@ -431,6 +431,7 @@
431
431
  structured_inherits: TensorIteratorBase
432
432
  dispatch:
433
433
  CPU, CUDA: sgn_out
434
+ MPS: sgn_out_mps
434
435
  SparseCPU, SparseCUDA: sgn_sparse_out
435
436
  SparseCsrCPU, SparseCsrCUDA: sgn_sparse_csr_out
436
437
  tags: pointwise
@@ -681,15 +682,29 @@
681
682
  structured_delegate: all.out
682
683
  variants: function, method
683
684
 
685
+ - func: all.dims(Tensor self, int[]? dim=None, bool keepdim=False) -> Tensor
686
+ device_check: NoCheck # TensorIterator
687
+ structured_delegate: all.dims_out
688
+ variants: function, method
689
+ cpp_no_default_args: ['dim']
690
+ dispatch:
691
+ CompositeExplicitAutograd: all_dims_default
692
+
684
693
  - func: all.out(Tensor self, int dim, bool keepdim=False, *, Tensor(a!) out) -> Tensor(a!)
685
694
  device_check: NoCheck # TensorIterator
686
695
  structured: True
687
- precomputed:
688
- - dim -> int dim
689
696
  dispatch:
690
697
  CPU, CUDA: all_out
691
698
  MPS: all_out_mps
692
699
 
700
+ - func: all.dims_out(Tensor self, int[]? dim=None, bool keepdim=False, *, Tensor(a!) out) -> Tensor(a!)
701
+ device_check: NoCheck # TensorIterator
702
+ structured: True
703
+ dispatch:
704
+ CPU, CUDA: all_dims_out
705
+ CompositeExplicitAutograd: all_dims_out_default
706
+ cpp_no_default_args: ['dim']
707
+
693
708
  - func: all.dimname(Tensor self, Dimname dim, bool keepdim=False) -> Tensor
694
709
  device_check: NoCheck # TensorIterator
695
710
  variants: function, method
@@ -709,15 +724,30 @@
709
724
  variants: function, method
710
725
  tags: core
711
726
 
727
+ - func: any.dims(Tensor self, int[]? dim=None, bool keepdim=False) -> Tensor
728
+ device_check: NoCheck # TensorIterator
729
+ structured_delegate: any.dims_out
730
+ variants: function, method
731
+ cpp_no_default_args: ['dim']
732
+ tags: core
733
+ dispatch:
734
+ CompositeExplicitAutograd: any_dims_default
735
+
712
736
  - func: any.out(Tensor self, int dim, bool keepdim=False, *, Tensor(a!) out) -> Tensor(a!)
713
737
  device_check: NoCheck # TensorIterator
714
738
  structured: True
715
- precomputed:
716
- - dim -> int dim
717
739
  dispatch:
718
740
  CPU, CUDA: any_out
719
741
  MPS: any_out_mps
720
742
 
743
+ - func: any.dims_out(Tensor self, int[]? dim=None, bool keepdim=False, *, Tensor(a!) out) -> Tensor(a!)
744
+ device_check: NoCheck # TensorIterator
745
+ structured: True
746
+ dispatch:
747
+ CPU, CUDA: any_dims_out
748
+ CompositeExplicitAutograd: any_dims_out_default
749
+ cpp_no_default_args: ['dim']
750
+
721
751
  - func: any.dimname(Tensor self, Dimname dim, bool keepdim=False) -> Tensor
722
752
  device_check: NoCheck # TensorIterator
723
753
  variants: function, method
@@ -1326,6 +1356,7 @@
1326
1356
  dispatch:
1327
1357
  SparseCPU, SparseCUDA: cat_sparse
1328
1358
  QuantizedCPU: cat_quantized_cpu
1359
+ NestedTensorCPU, NestedTensorCUDA: cat_nested
1329
1360
  tags: core
1330
1361
 
1331
1362
  - func: cat.out(Tensor[] tensors, int dim=0, *, Tensor(a!) out) -> Tensor(a!)
@@ -1613,59 +1644,67 @@
1613
1644
  variants: method
1614
1645
  manual_cpp_binding: True
1615
1646
 
1616
- - func: convolution(Tensor input, Tensor weight, Tensor? bias, int[] stride, SymInt[] padding, int[] dilation, bool transposed, SymInt[] output_padding, int groups) -> Tensor
1647
+ - func: convolution(Tensor input, Tensor weight, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, SymInt[] output_padding, SymInt groups) -> Tensor
1617
1648
  dispatch:
1618
1649
  CompositeExplicitAutograd: convolution
1619
1650
  autogen: convolution.out
1620
1651
  tags: core
1621
1652
 
1622
- - func: convolution_backward(Tensor grad_output, Tensor input, Tensor weight, SymInt[]? bias_sizes, int[] stride, SymInt[] padding, int[] dilation, bool transposed, SymInt[] output_padding, int groups, bool[3] output_mask) -> (Tensor, Tensor, Tensor)
1653
+ - func: convolution_backward(Tensor grad_output, Tensor input, Tensor weight, SymInt[]? bias_sizes, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, SymInt[] output_padding, SymInt groups, bool[3] output_mask) -> (Tensor, Tensor, Tensor)
1623
1654
  dispatch:
1624
1655
  CompositeExplicitAutograd, CUDA: convolution_backward
1625
1656
  autogen: convolution_backward.out
1626
1657
  tags: core
1627
1658
 
1628
- - func: convolution_overrideable(Tensor input, Tensor weight, Tensor? bias, int[] stride, int[] padding, int[] dilation, bool transposed, int[] output_padding, int groups) -> Tensor
1659
+ - func: convolution_overrideable(Tensor input, Tensor weight, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, SymInt[] output_padding, SymInt groups) -> Tensor
1629
1660
  dispatch:
1630
1661
  CompositeExplicitAutograd: convolution_overrideable
1631
1662
  autogen: convolution_overrideable.out
1632
1663
 
1633
- - func: convolution_backward_overrideable(Tensor grad_output, Tensor input, Tensor weight, int[] stride, int[] padding, int[] dilation, bool transposed, int[] output_padding, int groups, bool[3] output_mask) -> (Tensor grad_input, Tensor grad_weight, Tensor grad_bias)
1664
+ - func: convolution_backward_overrideable(Tensor grad_output, Tensor input, Tensor weight, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, SymInt[] output_padding, SymInt groups, bool[3] output_mask) -> (Tensor grad_input, Tensor grad_weight, Tensor grad_bias)
1634
1665
  dispatch:
1635
1666
  CompositeExplicitAutograd: convolution_backward_overrideable
1636
1667
  autogen: convolution_backward_overrideable.out
1637
1668
 
1638
- - func: _convolution(Tensor input, Tensor weight, Tensor? bias, int[] stride, SymInt[] padding, int[] dilation, bool transposed, SymInt[] output_padding, int groups, bool benchmark, bool deterministic, bool cudnn_enabled, bool allow_tf32) -> Tensor
1669
+ - func: _convolution(Tensor input, Tensor weight, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, SymInt[] output_padding, SymInt groups, bool benchmark, bool deterministic, bool cudnn_enabled, bool allow_tf32) -> Tensor
1639
1670
  dispatch:
1640
1671
  CompositeExplicitAutograd: _convolution
1641
1672
  autogen: _convolution.out
1642
1673
 
1643
- - func: _convolution.deprecated(Tensor input, Tensor weight, Tensor? bias, int[] stride, int[] padding, int[] dilation, bool transposed, int[] output_padding, int groups, bool benchmark, bool deterministic, bool cudnn_enabled) -> Tensor
1674
+ - func: _convolution.deprecated(Tensor input, Tensor weight, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, int[] output_padding, SymInt groups, bool benchmark, bool deterministic, bool cudnn_enabled) -> Tensor
1644
1675
 
1645
- - func: _convolution_mode(Tensor input, Tensor weight, Tensor? bias, int[] stride, str padding, int[] dilation, int groups) -> Tensor
1676
+ - func: _convolution_mode(Tensor input, Tensor weight, Tensor? bias, SymInt[] stride, str padding, SymInt[] dilation, SymInt groups) -> Tensor
1677
+ dispatch:
1678
+ CompositeImplicitAutograd: _convolution_mode_symint
1646
1679
 
1647
- - func: _convolution_double_backward(Tensor? ggI, Tensor? ggW, Tensor? ggb, Tensor gO, Tensor weight, Tensor self, int[] stride, SymInt[] padding, int[] dilation, bool transposed, SymInt[] output_padding, int groups, bool[3] output_mask) -> (Tensor, Tensor, Tensor)
1680
+ - func: _convolution_double_backward(Tensor? ggI, Tensor? ggW, Tensor? ggb, Tensor gO, Tensor weight, Tensor self, SymInt[] stride, SymInt[] padding, SymInt[] dilation, bool transposed, SymInt[] output_padding, SymInt groups, bool[3] output_mask) -> (Tensor, Tensor, Tensor)
1648
1681
 
1649
- - func: conv1d(Tensor input, Tensor weight, Tensor? bias=None, int[1] stride=1, SymInt[1] padding=0, int[1] dilation=1, int groups=1) -> Tensor
1682
+ - func: conv1d(Tensor input, Tensor weight, Tensor? bias=None, SymInt[1] stride=1, SymInt[1] padding=0, SymInt[1] dilation=1, SymInt groups=1) -> Tensor
1650
1683
  dispatch:
1651
1684
  CompositeImplicitAutograd: conv1d_symint
1652
1685
 
1653
- - func: conv2d(Tensor input, Tensor weight, Tensor? bias=None, int[2] stride=1, SymInt[2] padding=0, int[2] dilation=1, int groups=1) -> Tensor
1686
+ - func: conv2d(Tensor input, Tensor weight, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0, SymInt[2] dilation=1, SymInt groups=1) -> Tensor
1654
1687
  dispatch:
1655
1688
  CompositeImplicitAutograd: conv2d_symint
1656
1689
 
1657
- - func: conv3d(Tensor input, Tensor weight, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0, int[3] dilation=1, int groups=1) -> Tensor
1690
+ - func: conv3d(Tensor input, Tensor weight, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0, SymInt[3] dilation=1, SymInt groups=1) -> Tensor
1658
1691
  dispatch:
1659
1692
  CompositeImplicitAutograd: conv3d_symint
1660
1693
 
1661
- - func: conv1d.padding(Tensor input, Tensor weight, Tensor? bias=None, int[1] stride=1, str padding="valid", int[1] dilation=1, int groups=1) -> Tensor
1694
+ - func: conv1d.padding(Tensor input, Tensor weight, Tensor? bias=None, SymInt[1] stride=1, str padding="valid", SymInt[1] dilation=1, SymInt groups=1) -> Tensor
1662
1695
  cpp_no_default_args: ['bias', 'stride', 'padding']
1696
+ dispatch:
1697
+ CompositeImplicitAutograd: conv1d_padding_symint
1663
1698
 
1664
- - func: conv2d.padding(Tensor input, Tensor weight, Tensor? bias=None, int[2] stride=1, str padding="valid", int[2] dilation=1, int groups=1) -> Tensor
1699
+ - func: conv2d.padding(Tensor input, Tensor weight, Tensor? bias=None, SymInt[2] stride=1, str padding="valid", SymInt[2] dilation=1, SymInt groups=1) -> Tensor
1665
1700
  cpp_no_default_args: ['bias', 'stride', 'padding']
1701
+ dispatch:
1702
+ CompositeImplicitAutograd: conv2d_padding_symint
1666
1703
 
1667
- - func: conv3d.padding(Tensor input, Tensor weight, Tensor? bias=None, int[3] stride=1, str padding="valid", int[3] dilation=1, int groups=1) -> Tensor
1704
+ - func: conv3d.padding(Tensor input, Tensor weight, Tensor? bias=None, SymInt[3] stride=1, str padding="valid", SymInt[3] dilation=1, SymInt groups=1) -> Tensor
1668
1705
  cpp_no_default_args: ['bias', 'stride', 'padding']
1706
+ dispatch:
1707
+ CompositeImplicitAutograd: conv3d_padding_symint
1669
1708
 
1670
1709
  - func: conv_tbc(Tensor self, Tensor weight, Tensor bias, int pad=0) -> Tensor
1671
1710
  dispatch:
@@ -1675,15 +1714,15 @@
1675
1714
  - func: conv_tbc_backward(Tensor self, Tensor input, Tensor weight, Tensor bias, int pad) -> (Tensor, Tensor, Tensor)
1676
1715
 
1677
1716
  # NB: we inherit the goofy argument order from PyTorch torch.nn.functional
1678
- - func: conv_transpose1d(Tensor input, Tensor weight, Tensor? bias=None, int[1] stride=1, SymInt[1] padding=0, SymInt[1] output_padding=0, int groups=1, int[1] dilation=1) -> Tensor
1717
+ - func: conv_transpose1d(Tensor input, Tensor weight, Tensor? bias=None, SymInt[1] stride=1, SymInt[1] padding=0, SymInt[1] output_padding=0, SymInt groups=1, SymInt[1] dilation=1) -> Tensor
1679
1718
  dispatch:
1680
1719
  CompositeImplicitAutograd: conv_transpose1d_symint
1681
1720
 
1682
- - func: conv_transpose2d.input(Tensor input, Tensor weight, Tensor? bias=None, int[2] stride=1, SymInt[2] padding=0, SymInt[2] output_padding=0, int groups=1, int[2] dilation=1) -> Tensor
1721
+ - func: conv_transpose2d.input(Tensor input, Tensor weight, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0, SymInt[2] output_padding=0, SymInt groups=1, SymInt[2] dilation=1) -> Tensor
1683
1722
  dispatch:
1684
1723
  CompositeImplicitAutograd: conv_transpose2d_symint
1685
1724
 
1686
- - func: conv_transpose3d.input(Tensor input, Tensor weight, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0, SymInt[3] output_padding=0, int groups=1, int[3] dilation=1) -> Tensor
1725
+ - func: conv_transpose3d.input(Tensor input, Tensor weight, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0, SymInt[3] output_padding=0, SymInt groups=1, SymInt[3] dilation=1) -> Tensor
1687
1726
  dispatch:
1688
1727
  CompositeImplicitAutograd: conv_transpose3d_symint
1689
1728
 
@@ -1691,6 +1730,7 @@
1691
1730
  variants: function
1692
1731
  dispatch:
1693
1732
  CompositeExplicitAutogradNonFunctional: copy
1733
+ tags: core
1694
1734
 
1695
1735
  - func: copy_(Tensor(a!) self, Tensor src, bool non_blocking=False) -> Tensor(a!)
1696
1736
  variants: method
@@ -1720,6 +1760,8 @@
1720
1760
  device_check: NoCheck # TensorIterator
1721
1761
  variants: function, method
1722
1762
  structured_delegate: cos.out
1763
+ dispatch:
1764
+ NestedTensorCPU, NestedTensorCUDA: cos_nested
1723
1765
  tags: [core, pointwise]
1724
1766
 
1725
1767
  - func: cos_(Tensor(a!) self) -> Tensor(a!)
@@ -1802,32 +1844,32 @@
1802
1844
  CUDA: cudnn_batch_norm_backward
1803
1845
  autogen: cudnn_batch_norm_backward.out
1804
1846
 
1805
- - func: cudnn_convolution(Tensor self, Tensor weight, int[] padding, int[] stride, int[] dilation, int groups, bool benchmark, bool deterministic, bool allow_tf32) -> Tensor
1847
+ - func: cudnn_convolution(Tensor self, Tensor weight, SymInt[] padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool benchmark, bool deterministic, bool allow_tf32) -> Tensor
1806
1848
  dispatch:
1807
1849
  CUDA: cudnn_convolution
1808
1850
  autogen: cudnn_convolution.out
1809
1851
 
1810
- - func: cudnn_convolution_transpose(Tensor self, Tensor weight, int[] padding, int[] output_padding, int[] stride, int[] dilation, int groups, bool benchmark, bool deterministic, bool allow_tf32) -> Tensor
1852
+ - func: cudnn_convolution_transpose(Tensor self, Tensor weight, SymInt[] padding, SymInt[] output_padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool benchmark, bool deterministic, bool allow_tf32) -> Tensor
1811
1853
  dispatch:
1812
1854
  CUDA: cudnn_convolution_transpose
1813
1855
  autogen: cudnn_convolution_transpose.out
1814
1856
 
1815
- - func: _mps_convolution_transpose(Tensor self, Tensor weight, int[] padding, int[] output_padding, int[] stride, int[] dilation, int groups) -> Tensor
1857
+ - func: _mps_convolution_transpose(Tensor self, Tensor weight, SymInt[] padding, SymInt[] output_padding, SymInt[] stride, SymInt[] dilation, SymInt groups) -> Tensor
1816
1858
  dispatch:
1817
1859
  MPS: _mps_convolution_transpose
1818
1860
  autogen: _mps_convolution_transpose.out
1819
1861
 
1820
- - func: mps_convolution_transpose_backward(Tensor self, Tensor grad_output, Tensor weight, int[] padding, int[] output_padding, int[] stride, int[] dilation, int groups, bool[2] output_mask) -> (Tensor, Tensor)
1862
+ - func: mps_convolution_transpose_backward(Tensor self, Tensor grad_output, Tensor weight, SymInt[] padding, SymInt[] output_padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool[2] output_mask) -> (Tensor, Tensor)
1821
1863
  dispatch:
1822
1864
  MPS: mps_convolution_transpose_backward
1823
1865
  autogen: mps_convolution_transpose_backward.out
1824
1866
 
1825
- - func: cudnn_convolution_relu(Tensor self, Tensor weight, Tensor? bias, int[] stride, int[] padding, int[] dilation, int groups) -> Tensor
1867
+ - func: cudnn_convolution_relu(Tensor self, Tensor weight, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, SymInt groups) -> Tensor
1826
1868
  dispatch:
1827
1869
  CUDA: cudnn_convolution_relu
1828
1870
  autogen: cudnn_convolution_relu.out
1829
1871
 
1830
- - func: cudnn_convolution_add_relu(Tensor self, Tensor weight, Tensor z, Scalar? alpha, Tensor? bias, int[] stride, int[] padding, int[] dilation, int groups) -> Tensor
1872
+ - func: cudnn_convolution_add_relu(Tensor self, Tensor weight, Tensor z, Scalar? alpha, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, SymInt groups) -> Tensor
1831
1873
  dispatch:
1832
1874
  CUDA: cudnn_convolution_add_relu
1833
1875
  autogen: cudnn_convolution_add_relu.out
@@ -1967,6 +2009,7 @@
1967
2009
  dispatch:
1968
2010
  CPU: ctc_loss_cpu
1969
2011
  CUDA: ctc_loss_gpu
2012
+ Meta: ctc_loss_meta
1970
2013
  autogen: _ctc_loss.out
1971
2014
  tags: dynamic_output_shape # the shape of second output is data dependent
1972
2015
 
@@ -1999,6 +2042,7 @@
1999
2042
  variants: function, method
2000
2043
  dispatch:
2001
2044
  CompositeExplicitAutograd: diagonal
2045
+ tags: core
2002
2046
 
2003
2047
  - func: linalg_diagonal(Tensor(a) A, *, int offset=0, int dim1=-2, int dim2=-1) -> Tensor(a)
2004
2048
  python_module: linalg
@@ -2079,7 +2123,7 @@
2079
2123
  structured_delegate: div.out_mode
2080
2124
  dispatch:
2081
2125
  SparseCPU, SparseCUDA: div_sparse
2082
- tags: pointwise
2126
+ tags: [core, pointwise]
2083
2127
 
2084
2128
  - func: div_.Tensor_mode(Tensor(a!) self, Tensor other, *, str? rounding_mode) -> Tensor(a!)
2085
2129
  device_check: NoCheck # TensorIterator
@@ -2120,7 +2164,7 @@
2120
2164
  variants: function, method
2121
2165
  dispatch:
2122
2166
  CompositeExplicitAutograd: div
2123
- tags: pointwise
2167
+ tags: [core, pointwise]
2124
2168
 
2125
2169
  - func: div_.Scalar_mode(Tensor(a!) self, Scalar other, *, str? rounding_mode) -> Tensor(a!)
2126
2170
  variants: method
@@ -2370,7 +2414,7 @@
2370
2414
  variants: method
2371
2415
  device_check: NoCheck
2372
2416
  device_guard: False
2373
- tags: inplace_view
2417
+ tags: [core, inplace_view]
2374
2418
  dispatch:
2375
2419
  Meta: resize__symint
2376
2420
  CPU: resize_
@@ -2517,7 +2561,7 @@
2517
2561
  dispatch:
2518
2562
  SparseCPU, SparseCUDA: expm1_sparse
2519
2563
  SparseCsrCPU, SparseCsrCUDA: expm1_sparse_csr
2520
- tags: pointwise
2564
+ tags: [core, pointwise]
2521
2565
 
2522
2566
  - func: expm1_(Tensor(a!) self) -> Tensor(a!)
2523
2567
  device_check: NoCheck # TensorIterator
@@ -2684,10 +2728,15 @@
2684
2728
  - func: floor_divide.Scalar(Tensor self, Scalar other) -> Tensor
2685
2729
  device_check: NoCheck # TensorIterator
2686
2730
  variants: function, method
2731
+ dispatch:
2732
+ CompositeExplicitAutograd: floor_divide
2687
2733
 
2688
2734
  - func: floor_divide_.Scalar(Tensor(a!) self, Scalar other) -> Tensor(a!)
2689
2735
  device_check: NoCheck # TensorIterator
2690
2736
  variants: method
2737
+ dispatch:
2738
+ CompositeExplicitAutograd: floor_divide_
2739
+ autogen: floor_divide.Scalar_out
2691
2740
 
2692
2741
  - func: frac(Tensor self) -> Tensor
2693
2742
  device_check: NoCheck # TensorIterator
@@ -2979,7 +3028,7 @@
2979
3028
  - func: _unsafe_index.Tensor(Tensor self, Tensor?[] indices) -> Tensor
2980
3029
  variants: function
2981
3030
  dispatch:
2982
- CPU, CUDA: _unsafe_index
3031
+ CompositeExplicitAutograd: _unsafe_index
2983
3032
 
2984
3033
  - func: index_copy.out(Tensor self, int dim, Tensor index, Tensor source, *, Tensor(a!) out) -> Tensor(a!)
2985
3034
  structured: True
@@ -3253,7 +3302,7 @@
3253
3302
  dispatch:
3254
3303
  CUDA: _cslt_compress
3255
3304
 
3256
- - func: _cslt_sparse_mm(Tensor compressed_A, Tensor dense_B, Tensor? bias=None, bool transpose_result=False) -> Tensor
3305
+ - func: _cslt_sparse_mm(Tensor compressed_A, Tensor dense_B, Tensor? bias=None, Tensor? alpha=None, ScalarType? out_dtype=None, bool transpose_result=False) -> Tensor
3257
3306
  dispatch:
3258
3307
  CUDA: _cslt_sparse_mm
3259
3308
 
@@ -3261,6 +3310,10 @@
3261
3310
  dispatch:
3262
3311
  CUDA: _sparse_semi_structured_linear
3263
3312
 
3313
+ - func: _mixed_dtypes_linear(Tensor input, Tensor weight, Tensor scale, *, Tensor? bias=None, str? activation=None) -> Tensor
3314
+ dispatch:
3315
+ CUDA: _mixed_dtypes_linear
3316
+
3264
3317
  - func: fbgemm_linear_int8_weight_fp32_activation(Tensor input, Tensor weight, Tensor packed, Tensor col_offsets, Scalar weight_scale, Scalar weight_zero_point, Tensor bias) -> Tensor
3265
3318
 
3266
3319
  - func: fbgemm_linear_int8_weight(Tensor input, Tensor weight, Tensor packed, Tensor col_offsets, Scalar weight_scale, Scalar weight_zero_point, Tensor bias) -> Tensor
@@ -3291,12 +3344,42 @@
3291
3344
  dispatch:
3292
3345
  CompositeExplicitAutograd: linspace
3293
3346
 
3347
+ - func: linspace.Tensor_Tensor(Tensor start, Tensor end, int steps, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
3348
+ category_override: factory
3349
+ dispatch:
3350
+ CompositeExplicitAutograd: linspace
3351
+
3352
+ - func: linspace.Tensor_Scalar(Tensor start, Scalar end, int steps, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
3353
+ category_override: factory
3354
+ dispatch:
3355
+ CompositeExplicitAutograd: linspace
3356
+
3357
+ - func: linspace.Scalar_Tensor(Scalar start, Tensor end, int steps, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
3358
+ category_override: factory
3359
+ dispatch:
3360
+ CompositeExplicitAutograd: linspace
3361
+
3294
3362
  - func: linspace.out(Scalar start, Scalar end, int steps, *, Tensor(a!) out) -> Tensor(a!)
3295
3363
  dispatch:
3296
3364
  CPU, Meta: linspace_out
3297
3365
  CUDA: linspace_cuda_out
3298
3366
  MPS: linspace_out_mps
3299
3367
 
3368
+ - func: linspace.Tensor_Tensor_out(Tensor start, Tensor end, int steps, *, Tensor(a!) out) -> Tensor(a!)
3369
+ category_override: factory
3370
+ dispatch:
3371
+ CompositeExplicitAutograd: linspace_out
3372
+
3373
+ - func: linspace.Tensor_Scalar_out(Tensor start, Scalar end, int steps, *, Tensor(a!) out) -> Tensor(a!)
3374
+ category_override: factory
3375
+ dispatch:
3376
+ CompositeExplicitAutograd: linspace_out
3377
+
3378
+ - func: linspace.Scalar_Tensor_out(Scalar start, Tensor end, int steps, *, Tensor(a!) out) -> Tensor(a!)
3379
+ category_override: factory
3380
+ dispatch:
3381
+ CompositeExplicitAutograd: linspace_out
3382
+
3300
3383
  - func: log(Tensor self) -> Tensor
3301
3384
  device_check: NoCheck # TensorIterator
3302
3385
  structured_delegate: log.out
@@ -3322,7 +3405,7 @@
3322
3405
  device_check: NoCheck # TensorIterator
3323
3406
  structured_delegate: log10.out
3324
3407
  variants: function, method
3325
- tags: pointwise
3408
+ tags: [core, pointwise]
3326
3409
 
3327
3410
  - func: log10_(Tensor(a!) self) -> Tensor(a!)
3328
3411
  device_check: NoCheck # TensorIterator
@@ -3346,7 +3429,7 @@
3346
3429
  dispatch:
3347
3430
  SparseCPU, SparseCUDA: log1p_sparse
3348
3431
  SparseCsrCPU, SparseCsrCUDA: log1p_sparse_csr
3349
- tags: pointwise
3432
+ tags: [core, pointwise]
3350
3433
 
3351
3434
  - func: log1p_(Tensor(a!) self) -> Tensor(a!)
3352
3435
  device_check: NoCheck # TensorIterator
@@ -3372,7 +3455,7 @@
3372
3455
  device_check: NoCheck # TensorIterator
3373
3456
  structured_delegate: log2.out
3374
3457
  variants: function, method
3375
- tags: pointwise
3458
+ tags: [core, pointwise]
3376
3459
 
3377
3460
  - func: log2_(Tensor(a!) self) -> Tensor(a!)
3378
3461
  device_check: NoCheck # TensorIterator
@@ -3477,11 +3560,41 @@
3477
3560
  dispatch:
3478
3561
  CompositeExplicitAutograd: logspace
3479
3562
 
3563
+ - func: logspace.Tensor_Tensor(Tensor start, Tensor end, int steps, float base=10.0, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
3564
+ category_override: factory
3565
+ dispatch:
3566
+ CompositeExplicitAutograd: logspace
3567
+
3568
+ - func: logspace.Tensor_Scalar(Tensor start, Scalar end, int steps, float base=10.0, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
3569
+ category_override: factory
3570
+ dispatch:
3571
+ CompositeExplicitAutograd: logspace
3572
+
3573
+ - func: logspace.Scalar_Tensor(Scalar start, Tensor end, int steps, float base=10.0, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
3574
+ category_override: factory
3575
+ dispatch:
3576
+ CompositeExplicitAutograd: logspace
3577
+
3480
3578
  - func: logspace.out(Scalar start, Scalar end, int steps, float base=10.0, *, Tensor(a!) out) -> Tensor(a!)
3481
3579
  dispatch:
3482
3580
  CPU, Meta: logspace_out
3483
3581
  CUDA: logspace_cuda_out
3484
3582
 
3583
+ - func: logspace.Tensor_Tensor_out(Tensor start, Tensor end, int steps, float base=10.0, *, Tensor(a!) out) -> Tensor(a!)
3584
+ category_override: factory
3585
+ dispatch:
3586
+ CompositeExplicitAutograd: logspace_out
3587
+
3588
+ - func: logspace.Tensor_Scalar_out(Tensor start, Scalar end, int steps, float base=10.0, *, Tensor(a!) out) -> Tensor(a!)
3589
+ category_override: factory
3590
+ dispatch:
3591
+ CompositeExplicitAutograd: logspace_out
3592
+
3593
+ - func: logspace.Scalar_Tensor_out(Scalar start, Tensor end, int steps, float base=10.0, *, Tensor(a!) out) -> Tensor(a!)
3594
+ category_override: factory
3595
+ dispatch:
3596
+ CompositeExplicitAutograd: logspace_out
3597
+
3485
3598
  # log_softmax allows positional dtype, unlike most operators, because kwonly is BC-breaking when loading jit models.
3486
3599
  - func: log_softmax.int(Tensor self, int dim, ScalarType? dtype=None) -> Tensor
3487
3600
  variants: function, method
@@ -3847,17 +3960,17 @@
3847
3960
  # TODO: Add this function to MPS dispatch key so that we avoid declaring it in
3848
3961
  # native_functions.yaml
3849
3962
  # https://github.com/pytorch/pytorch/issues/77394
3850
- - func: _mps_convolution(Tensor self, Tensor weight, Tensor? bias, int[] padding, int[] stride, int[] dilation, int groups) -> Tensor
3963
+ - func: _mps_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, SymInt[] stride, SymInt[] dilation, SymInt groups) -> Tensor
3851
3964
  dispatch:
3852
3965
  MPS: _mps_convolution
3853
3966
  autogen: _mps_convolution.out
3854
3967
 
3855
- - func: mps_convolution_backward(Tensor self, Tensor grad_output, Tensor weight, int[] padding, int[] stride, int[] dilation, int groups, bool[3] output_mask) -> (Tensor, Tensor, Tensor)
3968
+ - func: mps_convolution_backward(Tensor self, Tensor grad_output, Tensor weight, SymInt[] padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool[3] output_mask) -> (Tensor, Tensor, Tensor)
3856
3969
  dispatch:
3857
3970
  MPS: mps_convolution_backward
3858
3971
  autogen: mps_convolution_backward.out
3859
3972
 
3860
- - func: mkldnn_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, int[] stride, int[] dilation, int groups) -> Tensor
3973
+ - func: mkldnn_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, SymInt[] stride, SymInt[] dilation, SymInt groups) -> Tensor
3861
3974
  dispatch:
3862
3975
  CompositeExplicitAutograd: mkldnn_convolution
3863
3976
  autogen: mkldnn_convolution.out
@@ -3883,26 +3996,26 @@
3883
3996
  CUDA: miopen_batch_norm_backward
3884
3997
  autogen: miopen_batch_norm_backward.out
3885
3998
 
3886
- - func: miopen_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, int[] stride, int[] dilation, int groups, bool benchmark, bool deterministic) -> Tensor
3999
+ - func: miopen_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool benchmark, bool deterministic) -> Tensor
3887
4000
  dispatch:
3888
4001
  CUDA: miopen_convolution
3889
4002
  autogen: miopen_convolution.out
3890
4003
 
3891
- - func: miopen_convolution_transpose(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, SymInt[] output_padding, int[] stride, int[] dilation, int groups, bool benchmark, bool deterministic) -> Tensor
4004
+ - func: miopen_convolution_transpose(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, SymInt[] output_padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool benchmark, bool deterministic) -> Tensor
3892
4005
  dispatch:
3893
4006
  CUDA: miopen_convolution_transpose
3894
4007
  autogen: miopen_convolution_transpose.out
3895
4008
 
3896
- - func: miopen_depthwise_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, int[] stride, int[] dilation, int groups, bool benchmark, bool deterministic) -> Tensor
4009
+ - func: miopen_depthwise_convolution(Tensor self, Tensor weight, Tensor? bias, SymInt[] padding, SymInt[] stride, SymInt[] dilation, SymInt groups, bool benchmark, bool deterministic) -> Tensor
3897
4010
  dispatch:
3898
4011
  CUDA: miopen_depthwise_convolution
3899
4012
  autogen: miopen_depthwise_convolution.out
3900
4013
 
3901
- - func: miopen_convolution_relu(Tensor self, Tensor weight, Tensor? bias, int[] stride, int[] padding, int[] dilation, int groups) -> Tensor
4014
+ - func: miopen_convolution_relu(Tensor self, Tensor weight, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, SymInt groups) -> Tensor
3902
4015
  dispatch:
3903
4016
  CUDA: miopen_convolution_relu
3904
4017
 
3905
- - func: miopen_convolution_add_relu(Tensor self, Tensor weight, Tensor z, Scalar? alpha, Tensor? bias, int[] stride, int[] padding, int[] dilation, int groups) -> Tensor
4018
+ - func: miopen_convolution_add_relu(Tensor self, Tensor weight, Tensor z, Scalar? alpha, Tensor? bias, SymInt[] stride, SymInt[] padding, SymInt[] dilation, SymInt groups) -> Tensor
3906
4019
  dispatch:
3907
4020
  CUDA: miopen_convolution_add_relu
3908
4021
 
@@ -3943,6 +4056,14 @@
3943
4056
  dispatch:
3944
4057
  CUDA: _int_mm_out_cuda
3945
4058
 
4059
+ - func: _convert_weight_to_int4pack(Tensor self, int innerKTiles) -> Tensor
4060
+ dispatch:
4061
+ CUDA: _convert_weight_to_int4pack_cuda
4062
+
4063
+ - func: _weight_int4pack_mm(Tensor self, Tensor mat2, int qGroupSize, Tensor qScaleAndZeros) -> Tensor
4064
+ dispatch:
4065
+ CUDA: _weight_int4pack_mm_cuda
4066
+
3946
4067
  - func: _sparse_mm(Tensor sparse, Tensor dense) -> Tensor
3947
4068
  python_module: sparse
3948
4069
 
@@ -4087,6 +4208,7 @@
4087
4208
  device_guard: False
4088
4209
  dispatch:
4089
4210
  CompositeImplicitAutograd: narrow_symint
4211
+ NestedTensorCPU, NestedTensorCUDA: narrow_nested_symint
4090
4212
 
4091
4213
  - func: narrow.Tensor(Tensor(a) self, int dim, Tensor start, SymInt length) -> Tensor(a)
4092
4214
  variants: function, method
@@ -4199,7 +4321,7 @@
4199
4321
 
4200
4322
  - func: _nnpack_available() -> bool
4201
4323
 
4202
- - func: _nnpack_spatial_convolution(Tensor input, Tensor weight, Tensor? bias, SymInt[2] padding, int[2] stride=1) -> Tensor
4324
+ - func: _nnpack_spatial_convolution(Tensor input, Tensor weight, Tensor? bias, SymInt[2] padding, SymInt[2] stride=1) -> Tensor
4203
4325
  variants: function
4204
4326
  dispatch:
4205
4327
  CompositeExplicitAutograd: _nnpack_spatial_convolution
@@ -4314,6 +4436,7 @@
4314
4436
  - func: pixel_shuffle(Tensor self, int upscale_factor) -> Tensor
4315
4437
  dispatch:
4316
4438
  CPU: pixel_shuffle_cpu
4439
+ MPS: pixel_shuffle_mps
4317
4440
  CompositeExplicitAutogradNonFunctional: math_pixel_shuffle
4318
4441
  autogen: pixel_shuffle.out
4319
4442
  tags: core
@@ -4321,16 +4444,17 @@
4321
4444
  - func: pixel_unshuffle(Tensor self, int downscale_factor) -> Tensor
4322
4445
  dispatch:
4323
4446
  CPU: pixel_unshuffle_cpu
4447
+ MPS: pixel_unshuffle_mps
4324
4448
  CompositeExplicitAutogradNonFunctional: math_pixel_unshuffle
4325
4449
  autogen: pixel_unshuffle.out
4326
4450
 
4327
- - func: channel_shuffle(Tensor self, int groups) -> Tensor
4451
+ - func: channel_shuffle(Tensor self, SymInt groups) -> Tensor
4328
4452
  dispatch:
4329
4453
  CPU, CUDA: channel_shuffle
4330
4454
  QuantizedCPU: channel_shuffle_quantized_cpu
4331
4455
  autogen: channel_shuffle.out
4332
4456
 
4333
- - func: native_channel_shuffle(Tensor self, int groups) -> Tensor
4457
+ - func: native_channel_shuffle(Tensor self, SymInt groups) -> Tensor
4334
4458
  dispatch:
4335
4459
  CPU: channel_shuffle_cpu
4336
4460
  CompositeImplicitAutograd: math_channel_shuffle
@@ -4338,7 +4462,7 @@
4338
4462
  - func: is_pinned(Tensor self, Device? device=None) -> bool
4339
4463
  variants: method
4340
4464
  dispatch:
4341
- CUDA: is_pinned_cuda
4465
+ NestedTensorCUDA, CUDA: is_pinned_cuda
4342
4466
  MPS: is_pinned_mps
4343
4467
  CompositeExplicitAutograd: is_pinned_default
4344
4468
 
@@ -4352,6 +4476,7 @@
4352
4476
  dispatch:
4353
4477
  CUDA: _pin_memory_cuda
4354
4478
  MPS: _pin_memory_mps
4479
+ NestedTensorCUDA, NestedTensorCPU: _pin_memory_nested
4355
4480
  autogen: _pin_memory.out
4356
4481
 
4357
4482
  - func: pinverse(Tensor self, float rcond=1e-15) -> Tensor
@@ -4660,7 +4785,7 @@
4660
4785
  autogen: repeat.out
4661
4786
  tags: core
4662
4787
 
4663
- - func: repeat_interleave.Tensor(Tensor repeats, *, int? output_size=None) -> Tensor
4788
+ - func: repeat_interleave.Tensor(Tensor repeats, *, SymInt? output_size=None) -> Tensor
4664
4789
  variants: function
4665
4790
  dispatch:
4666
4791
  CPU: repeat_interleave_cpu
@@ -4669,10 +4794,12 @@
4669
4794
  tags: dynamic_output_shape
4670
4795
  autogen: repeat_interleave.Tensor_out
4671
4796
 
4672
- - func: repeat_interleave.self_Tensor(Tensor self, Tensor repeats, int? dim=None, *, int? output_size=None) -> Tensor
4797
+ - func: repeat_interleave.self_Tensor(Tensor self, Tensor repeats, int? dim=None, *, SymInt? output_size=None) -> Tensor
4673
4798
  variants: function, method
4799
+ dispatch:
4800
+ CompositeImplicitAutograd: repeat_interleave_symint
4674
4801
 
4675
- - func: repeat_interleave.self_int(Tensor self, SymInt repeats, int? dim=None, *, int? output_size=None) -> Tensor
4802
+ - func: repeat_interleave.self_int(Tensor self, SymInt repeats, int? dim=None, *, SymInt? output_size=None) -> Tensor
4676
4803
  variants: function, method
4677
4804
  dispatch:
4678
4805
  CompositeImplicitAutograd: repeat_interleave_symint
@@ -4973,12 +5100,14 @@
4973
5100
  python_module: nn
4974
5101
  dispatch:
4975
5102
  NestedTensorCPU, NestedTensorCUDA: NestedTensor_silu
5103
+ tags: pointwise
4976
5104
 
4977
5105
  - func: silu_(Tensor(a!) self) -> Tensor(a!)
4978
5106
  structured_delegate: silu.out
4979
5107
  python_module: nn
4980
5108
  dispatch:
4981
5109
  NestedTensorCPU, NestedTensorCUDA: NestedTensor_silu_
5110
+ tags: pointwise
4982
5111
 
4983
5112
  - func: silu.out(Tensor self, *, Tensor(a!) out) -> Tensor(a!)
4984
5113
  structured: True
@@ -4987,6 +5116,7 @@
4987
5116
  dispatch:
4988
5117
  CPU, CUDA: silu_out
4989
5118
  MPS: silu_out_mps
5119
+ tags: pointwise
4990
5120
 
4991
5121
  - func: silu_backward.grad_input(Tensor grad_output, Tensor self, *, Tensor(a!) grad_input) -> Tensor(a!)
4992
5122
  structured: True
@@ -4995,6 +5125,7 @@
4995
5125
  dispatch:
4996
5126
  CPU, CUDA: silu_backward_out
4997
5127
  MPS: silu_backward_out_mps
5128
+ tags: pointwise
4998
5129
 
4999
5130
  - func: silu_backward(Tensor grad_output, Tensor self) -> Tensor
5000
5131
  structured_delegate: silu_backward.grad_input
@@ -5002,6 +5133,7 @@
5002
5133
  dispatch:
5003
5134
  CompositeImplicitAutograd: math_silu_backward
5004
5135
  NestedTensorCPU, NestedTensorCUDA: silu_backward_nested
5136
+ tags: pointwise
5005
5137
 
5006
5138
  - func: mish(Tensor self) -> Tensor
5007
5139
  structured_delegate: mish.out
@@ -5017,11 +5149,13 @@
5017
5149
  python_module: nn
5018
5150
  dispatch:
5019
5151
  CPU, CUDA: mish_out
5152
+ MPS: mish_out_mps
5020
5153
 
5021
5154
  - func: mish_backward(Tensor grad_output, Tensor self) -> Tensor
5022
5155
  python_module: nn
5023
5156
  dispatch:
5024
5157
  CPU, CUDA: mish_backward
5158
+ MPS: mish_backward_mps
5025
5159
  CompositeImplicitAutograd: math_mish_backward
5026
5160
 
5027
5161
  - func: sigmoid(Tensor self) -> Tensor
@@ -5076,6 +5210,7 @@
5076
5210
  dispatch:
5077
5211
  SparseCsrCPU, SparseCsrCUDA: sin_sparse_csr
5078
5212
  SparseCPU, SparseCUDA: sin_sparse
5213
+ NestedTensorCPU, NestedTensorCUDA: sin_nested
5079
5214
  tags: [core, pointwise]
5080
5215
 
5081
5216
  - func: sin_(Tensor(a!) self) -> Tensor(a!)
@@ -5971,7 +6106,7 @@
5971
6106
  dispatch:
5972
6107
  SparseCPU, SparseCUDA: trunc_sparse
5973
6108
  SparseCsrCPU, SparseCsrCUDA: trunc_sparse_csr
5974
- tags: pointwise
6109
+ tags: [core, pointwise]
5975
6110
 
5976
6111
  - func: trunc_(Tensor(a!) self) -> Tensor(a!)
5977
6112
  structured_delegate: trunc.out
@@ -6196,6 +6331,7 @@
6196
6331
  dispatch:
6197
6332
  CPU: weight_norm_cpu
6198
6333
  CUDA: weight_norm_cuda
6334
+ MPS: weight_norm_mps
6199
6335
  autogen: _weight_norm_interface.out
6200
6336
 
6201
6337
  - func: _weight_norm_interface_backward(Tensor grad_w, Tensor saved_v, Tensor saved_g, Tensor saved_norms, int dim) -> (Tensor, Tensor)
@@ -6203,6 +6339,7 @@
6203
6339
  dispatch:
6204
6340
  CPU: weight_norm_backward_cpu
6205
6341
  CUDA: weight_norm_backward_cuda
6342
+ MPS: weight_norm_backward_mps
6206
6343
  autogen: _weight_norm_interface_backward.out
6207
6344
 
6208
6345
  - func: _weight_norm_differentiable_backward(Tensor grad_w, Tensor saved_v, Tensor saved_g, Tensor saved_norms, int dim) -> (Tensor, Tensor)
@@ -6219,6 +6356,7 @@
6219
6356
  dispatch:
6220
6357
  CPU: _efficientzerotensor
6221
6358
  CUDA: _efficientzerotensor_cuda
6359
+ MPS: _efficientzerotensor_mps
6222
6360
  Meta: _efficientzerotensor_meta
6223
6361
  autogen: _efficientzerotensor.out
6224
6362
 
@@ -6675,12 +6813,12 @@
6675
6813
  structured_delegate: _addmm_activation.out
6676
6814
  variants: function, method
6677
6815
 
6678
- - func: _scaled_mm(Tensor self, Tensor mat2, *, Tensor? bias=None, ScalarType? out_dtype=None, Tensor? scale_a=None, Tensor? scale_b=None, Tensor? scale_result=None) -> (Tensor, Tensor)
6816
+ - func: _scaled_mm(Tensor self, Tensor mat2, *, Tensor? bias=None, ScalarType? out_dtype=None, Tensor? scale_a=None, Tensor? scale_b=None, Tensor? scale_result=None, bool use_fast_accum=False) -> (Tensor, Tensor)
6679
6817
  variants: function
6680
6818
  dispatch:
6681
6819
  CUDA: _scaled_mm_cuda
6682
6820
 
6683
- - func: _scaled_mm.out(Tensor self, Tensor mat2, *, Tensor? bias=None, ScalarType? out_dtype=None, Tensor? scale_a=None, Tensor? scale_b=None, Tensor? scale_result=None, Tensor(a!) out, Tensor(b!) out_amax) -> (Tensor(a!), Tensor(b!))
6821
+ - func: _scaled_mm.out(Tensor self, Tensor mat2, *, Tensor? bias=None, ScalarType? out_dtype=None, Tensor? scale_a=None, Tensor? scale_b=None, Tensor? scale_result=None, bool use_fast_accum=False, Tensor(a!) out, Tensor(b!) out_amax) -> (Tensor(a!), Tensor(b!))
6684
6822
  variants: function
6685
6823
  dispatch:
6686
6824
  CUDA: _scaled_mm_out_cuda
@@ -7055,7 +7193,7 @@
7055
7193
  variants: function, method
7056
7194
  dispatch:
7057
7195
  CompositeExplicitAutograd: unbind
7058
- CompositeImplicitAutogradNestedTensor: NestedTensor_unbind
7196
+ NestedTensorCPU, NestedTensorCUDA: NestedTensor_unbind
7059
7197
 
7060
7198
  - func: unbind.Dimname(Tensor(a -> *) self, Dimname dim) -> Tensor(a)[]
7061
7199
  variants: function, method
@@ -7143,14 +7281,14 @@
7143
7281
  CPU: dense_to_mkldnn
7144
7282
  autogen: to_mkldnn.out
7145
7283
 
7146
- - func: mkldnn_reorder_conv2d_weight(Tensor self, int[2] padding=0, int[2] stride=1, int[2] dilation=1, int groups=1, int[]? input_size=None) -> Tensor
7284
+ - func: mkldnn_reorder_conv2d_weight(Tensor self, SymInt[2] padding=0, SymInt[2] stride=1, SymInt[2] dilation=1, SymInt groups=1, SymInt[]? input_size=None) -> Tensor
7147
7285
  variants: function
7148
7286
  python_module: nn
7149
7287
  dispatch:
7150
7288
  MkldnnCPU: mkldnn_reorder_conv2d_weight
7151
7289
  autogen: mkldnn_reorder_conv2d_weight.out
7152
7290
 
7153
- - func: mkldnn_reorder_conv3d_weight(Tensor self, int[3] padding=0, int[3] stride=1, int[3] dilation=1, int groups=1) -> Tensor
7291
+ - func: mkldnn_reorder_conv3d_weight(Tensor self, SymInt[3] padding=0, SymInt[3] stride=1, SymInt[3] dilation=1, SymInt groups=1) -> Tensor
7154
7292
  variants: function
7155
7293
  python_module: nn
7156
7294
  dispatch:
@@ -7656,6 +7794,10 @@
7656
7794
  dispatch:
7657
7795
  CompositeExplicitAutograd: masked_scatter
7658
7796
 
7797
+ - func: masked_scatter_backward(Tensor grad_output, Tensor mask, SymInt[] sizes) -> Tensor
7798
+ dispatch:
7799
+ CompositeExplicitAutograd: masked_scatter_backward_symint
7800
+
7659
7801
  - func: _masked_softmax(Tensor self, Tensor mask, int? dim=None, int? mask_type=None) -> Tensor
7660
7802
  dispatch:
7661
7803
  CUDA: masked_softmax_cuda
@@ -7938,6 +8080,8 @@
7938
8080
  - func: bitwise_and_.Scalar(Tensor(a!) self, Scalar other) -> Tensor(a!)
7939
8081
  device_check: NoCheck # TensorIterator
7940
8082
  variants: method
8083
+ dispatch:
8084
+ CompositeExplicitAutograd: bitwise_and_
7941
8085
  tags: pointwise
7942
8086
 
7943
8087
  - func: bitwise_and_.Tensor(Tensor(a!) self, Tensor other) -> Tensor(a!)
@@ -7982,6 +8126,8 @@
7982
8126
  - func: bitwise_or.Scalar(Tensor self, Scalar other) -> Tensor
7983
8127
  device_check: NoCheck # TensorIterator
7984
8128
  variants: method, function
8129
+ dispatch:
8130
+ CompositeExplicitAutograd: bitwise_or
7985
8131
  tags: [core, pointwise]
7986
8132
 
7987
8133
  - func: bitwise_or.Scalar_Tensor(Scalar self, Tensor other) -> Tensor
@@ -8001,6 +8147,8 @@
8001
8147
  - func: bitwise_or_.Scalar(Tensor(a!) self, Scalar other) -> Tensor(a!)
8002
8148
  device_check: NoCheck # TensorIterator
8003
8149
  variants: method
8150
+ dispatch:
8151
+ CompositeExplicitAutograd: bitwise_or_
8004
8152
  tags: pointwise
8005
8153
 
8006
8154
  - func: bitwise_or_.Tensor(Tensor(a!) self, Tensor other) -> Tensor(a!)
@@ -8045,6 +8193,8 @@
8045
8193
  - func: bitwise_xor.Scalar(Tensor self, Scalar other) -> Tensor
8046
8194
  device_check: NoCheck # TensorIterator
8047
8195
  variants: method, function
8196
+ dispatch:
8197
+ CompositeExplicitAutograd: bitwise_xor
8048
8198
  tags: [core, pointwise]
8049
8199
 
8050
8200
  - func: bitwise_xor.Scalar_Tensor(Scalar self, Tensor other) -> Tensor
@@ -8064,6 +8214,8 @@
8064
8214
  - func: bitwise_xor_.Scalar(Tensor(a!) self, Scalar other) -> Tensor(a!)
8065
8215
  device_check: NoCheck # TensorIterator
8066
8216
  variants: method
8217
+ dispatch:
8218
+ CompositeExplicitAutograd: bitwise_xor_
8067
8219
  tags: pointwise
8068
8220
 
8069
8221
  - func: bitwise_xor_.Tensor(Tensor(a!) self, Tensor other) -> Tensor(a!)
@@ -8504,6 +8656,7 @@
8504
8656
  variants: method, function
8505
8657
  dispatch:
8506
8658
  QuantizedCPU: eq_quantized_cpu
8659
+ NestedTensorCPU, NestedTensorCUDA: eq_scalar_nested
8507
8660
  tags: [core, pointwise]
8508
8661
 
8509
8662
  - func: eq.Tensor_out(Tensor self, Tensor other, *, Tensor(a!) out) -> Tensor(a!)
@@ -8540,6 +8693,7 @@
8540
8693
  variants: method, function
8541
8694
  dispatch:
8542
8695
  QuantizedCPU: ge_quantized_cpu
8696
+ NestedTensorCPU, NestedTensorCUDA: ge_scalar_nested
8543
8697
  tags: [core, pointwise]
8544
8698
 
8545
8699
  - func: ge.Tensor_out(Tensor self, Tensor other, *, Tensor(a!) out) -> Tensor(a!)
@@ -8666,6 +8820,7 @@
8666
8820
  variants: method, function
8667
8821
  dispatch:
8668
8822
  QuantizedCPU: gt_quantized_cpu
8823
+ NestedTensorCPU, NestedTensorCUDA: gt_scalar_nested
8669
8824
  tags: [core, pointwise]
8670
8825
 
8671
8826
  - func: gt.Tensor_out(Tensor self, Tensor other, *, Tensor(a!) out) -> Tensor(a!)
@@ -9106,6 +9261,7 @@
9106
9261
  structured_inherits: TensorIteratorBase
9107
9262
  dispatch:
9108
9263
  CPU, CUDA: lgamma_out
9264
+ MPS: lgamma_out_mps
9109
9265
  tags: pointwise
9110
9266
 
9111
9267
  - func: lgamma_(Tensor(a!) self) -> Tensor(a!)
@@ -9126,6 +9282,7 @@
9126
9282
  structured_inherits: TensorIteratorBase
9127
9283
  dispatch:
9128
9284
  CPU, CUDA: digamma_out
9285
+ MPS: digamma_out_mps
9129
9286
  tags: pointwise
9130
9287
 
9131
9288
  - func: digamma(Tensor self) -> Tensor
@@ -9140,6 +9297,7 @@
9140
9297
  structured_inherits: TensorIteratorBase
9141
9298
  dispatch:
9142
9299
  CPU, CUDA: polygamma_out
9300
+ MPS: polygamma_out_mps
9143
9301
  tags: pointwise
9144
9302
 
9145
9303
  - func: polygamma(int n, Tensor self) -> Tensor
@@ -9263,7 +9421,7 @@
9263
9421
  dispatch:
9264
9422
  CPU, CUDA: atan2_out
9265
9423
  MPS: atan2_out_mps
9266
- tags: pointwise
9424
+ tags: [core, pointwise]
9267
9425
 
9268
9426
  - func: atan2_(Tensor(a!) self, Tensor other) -> Tensor(a!)
9269
9427
  device_check: NoCheck # TensorIterator
@@ -9275,7 +9433,7 @@
9275
9433
  device_check: NoCheck # TensorIterator
9276
9434
  structured_delegate: atan2.out
9277
9435
  variants: method, function
9278
- tags: pointwise
9436
+ tags: [core, pointwise]
9279
9437
  # arctan2, alias of atan2
9280
9438
 
9281
9439
  - func: arctan2(Tensor self, Tensor other) -> Tensor
@@ -9464,7 +9622,7 @@
9464
9622
  structured: True
9465
9623
  structured_inherits: TensorIteratorBase
9466
9624
  dispatch:
9467
- CPU, CUDA: nextafter_out
9625
+ CPU, CUDA, MPS: nextafter_out
9468
9626
  tags: pointwise
9469
9627
 
9470
9628
  - func: nextafter(Tensor self, Tensor other) -> Tensor
@@ -9811,7 +9969,7 @@
9811
9969
  - func: pow.Scalar(Scalar self, Tensor exponent) -> Tensor
9812
9970
  device_check: NoCheck # TensorIterator
9813
9971
  structured_delegate: pow.Scalar_out
9814
- tags: pointwise
9972
+ tags: [core, pointwise]
9815
9973
 
9816
9974
  - func: pow.Tensor_Scalar_out(Tensor self, Scalar exponent, *, Tensor(a!) out) -> Tensor(a!)
9817
9975
  device_check: NoCheck # TensorIterator
@@ -10020,6 +10178,21 @@
10020
10178
  CUDA: foreach_tensor_add_scalarlist_kernel_cuda_
10021
10179
  autogen: _foreach_add.ScalarList_out
10022
10180
 
10181
+ - func: _foreach_add.Tensor(Tensor[] self, Tensor other, *, Scalar alpha=1) -> Tensor[]
10182
+ device_check: NoCheck # foreach kernels fall back to slow path when tensor are on different devices
10183
+ variants: function
10184
+ dispatch:
10185
+ CPU: foreach_tensor_add_tensor_kernel_slow
10186
+ CUDA: foreach_tensor_add_tensor_kernel_cuda
10187
+
10188
+ - func: _foreach_add_.Tensor(Tensor(a!)[] self, Tensor other, *, Scalar alpha=1) -> ()
10189
+ device_check: NoCheck # foreach kernels fall back to slow path when tensor are on different devices
10190
+ variants: function
10191
+ dispatch:
10192
+ CPU: foreach_tensor_add_tensor_kernel_slow_
10193
+ CUDA: foreach_tensor_add_tensor_kernel_cuda_
10194
+ autogen: _foreach_add.Tensor_out
10195
+
10023
10196
  - func: _foreach_sub.Scalar(Tensor[] self, Scalar scalar) -> Tensor[]
10024
10197
  device_check: NoCheck # foreach kernels fall back to slow path when tensor are on different devices
10025
10198
  variants: function
@@ -10170,6 +10343,21 @@
10170
10343
  CUDA: foreach_tensor_div_scalarlist_kernel_cuda_
10171
10344
  autogen: _foreach_div.ScalarList_out
10172
10345
 
10346
+ - func: _foreach_div.Tensor(Tensor[] self, Tensor other) -> Tensor[]
10347
+ device_check: NoCheck # foreach kernels fall back to slow path when tensor are on different devices
10348
+ variants: function
10349
+ dispatch:
10350
+ CPU: foreach_tensor_div_tensor_kernel_slow
10351
+ CUDA: foreach_tensor_div_tensor_kernel_cuda
10352
+
10353
+ - func: _foreach_div_.Tensor(Tensor(a!)[] self, Tensor other) -> ()
10354
+ device_check: NoCheck # foreach kernels fall back to slow path when tensor are on different devices
10355
+ variants: function
10356
+ dispatch:
10357
+ CPU: foreach_tensor_div_tensor_kernel_slow_
10358
+ CUDA: foreach_tensor_div_tensor_kernel_cuda_
10359
+ autogen: _foreach_div.Tensor_out
10360
+
10173
10361
  - func: _foreach_clamp_max.Scalar(Tensor[] self, Scalar scalar) -> Tensor[]
10174
10362
  device_check: NoCheck # foreach kernels fall back to slow path when tensor are on different devices
10175
10363
  variants: function
@@ -10990,37 +11178,44 @@
10990
11178
  dispatch:
10991
11179
  CPU: bucketize_cpu
10992
11180
  CUDA: bucketize_cuda
11181
+ MPS: bucketize_mps
10993
11182
 
10994
11183
  - func: bucketize.Tensor_out(Tensor self, Tensor boundaries, *, bool out_int32=False, bool right=False, Tensor(a!) out) -> Tensor(a!)
10995
11184
  dispatch:
10996
11185
  CPU: bucketize_out_cpu
10997
11186
  CUDA: bucketize_out_cuda
11187
+ MPS: bucketize_out_mps
10998
11188
 
10999
11189
  - func: bucketize.Scalar(Scalar self, Tensor boundaries, *, bool out_int32=False, bool right=False) -> Tensor
11000
11190
  dispatch:
11001
11191
  CPU: bucketize_cpu
11002
11192
  CUDA: bucketize_cuda
11193
+ MPS: bucketize_mps
11003
11194
  autogen: bucketize.Scalar_out
11004
11195
 
11005
11196
  - func: searchsorted.Tensor(Tensor sorted_sequence, Tensor self, *, bool out_int32=False, bool right=False, str? side=None, Tensor? sorter=None) -> Tensor
11006
11197
  dispatch:
11007
11198
  CPU: searchsorted_cpu
11008
11199
  CUDA: searchsorted_cuda
11200
+ MPS: searchsorted_mps
11009
11201
 
11010
11202
  - func: searchsorted.Tensor_out(Tensor sorted_sequence, Tensor self, *, bool out_int32=False, bool right=False, str? side=None, Tensor? sorter=None, Tensor(a!) out) -> Tensor(a!)
11011
11203
  dispatch:
11012
11204
  CPU: searchsorted_out_cpu
11013
11205
  CUDA: searchsorted_out_cuda
11206
+ MPS: searchsorted_out_mps
11014
11207
 
11015
11208
  - func: searchsorted.Scalar(Tensor sorted_sequence, Scalar self, *, bool out_int32=False, bool right=False, str? side=None, Tensor? sorter=None) -> Tensor
11016
11209
  dispatch:
11017
11210
  CPU: searchsorted_cpu
11018
11211
  CUDA: searchsorted_cuda
11212
+ MPS: searchsorted_mps
11019
11213
 
11020
11214
  - func: searchsorted.Scalar_out(Tensor sorted_sequence, Scalar self, *, bool out_int32=False, bool right=False, str? side=None, Tensor? sorter=None, Tensor(a!) out) -> Tensor(a!)
11021
11215
  dispatch:
11022
11216
  CPU: searchsorted_out_cpu
11023
11217
  CUDA: searchsorted_out_cuda
11218
+ MPS: searchsorted_out_mps
11024
11219
 
11025
11220
  - func: _convert_indices_from_coo_to_csr(Tensor self, int size, *, bool out_int32=False) -> Tensor
11026
11221
  structured_delegate: _convert_indices_from_coo_to_csr.out
@@ -11568,6 +11763,7 @@
11568
11763
  python_module: nn
11569
11764
  dispatch:
11570
11765
  CPU, CUDA: softshrink_out
11766
+ MPS: softshrink_out_mps
11571
11767
 
11572
11768
  - func: softshrink(Tensor self, Scalar lambd=0.5) -> Tensor
11573
11769
  structured_delegate: softshrink.out
@@ -11580,6 +11776,7 @@
11580
11776
  python_module: nn
11581
11777
  dispatch:
11582
11778
  CPU, CUDA: softshrink_backward_out
11779
+ MPS: softshrink_backward_out_mps
11583
11780
 
11584
11781
  - func: softshrink_backward(Tensor grad_output, Tensor self, Scalar lambd) -> Tensor
11585
11782
  structured_delegate: softshrink_backward.grad_input
@@ -12482,101 +12679,101 @@
12482
12679
  # make the operational distinction clear.
12483
12680
  tags: pointwise
12484
12681
 
12485
- - func: slow_conv_transpose2d.out(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias=None, int[2] stride=1, SymInt[2] padding=0, SymInt[2] output_padding=0, int[2] dilation=1, *, Tensor(a!) out) -> Tensor(a!)
12682
+ - func: slow_conv_transpose2d.out(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0, SymInt[2] output_padding=0, SymInt[2] dilation=1, *, Tensor(a!) out) -> Tensor(a!)
12486
12683
  python_module: nn
12487
12684
  structured: True
12488
12685
  dispatch:
12489
12686
  CPU: slow_conv_transpose2d_structured_cpu
12490
12687
  CUDA: slow_conv_transpose2d_structured_cuda
12491
12688
 
12492
- - func: slow_conv_transpose2d(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias=None, int[2] stride=1, SymInt[2] padding=0, SymInt[2] output_padding=0, int[2] dilation=1) -> Tensor
12689
+ - func: slow_conv_transpose2d(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0, SymInt[2] output_padding=0, SymInt[2] dilation=1) -> Tensor
12493
12690
  python_module: nn
12494
12691
  structured_delegate: slow_conv_transpose2d.out
12495
12692
 
12496
- - func: slow_conv_transpose3d.out(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0, SymInt[3] output_padding=0, int[3] dilation=1, *, Tensor(a!) out) -> Tensor(a!)
12693
+ - func: slow_conv_transpose3d.out(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0, SymInt[3] output_padding=0, SymInt[3] dilation=1, *, Tensor(a!) out) -> Tensor(a!)
12497
12694
  python_module: nn
12498
12695
  dispatch:
12499
12696
  CPU: slow_conv_transpose3d_out_cpu
12500
12697
  CUDA: slow_conv_transpose3d_out_cuda
12501
12698
 
12502
- - func: slow_conv_transpose3d(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0, SymInt[3] output_padding=0, int[3] dilation=1) -> Tensor
12699
+ - func: slow_conv_transpose3d(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0, SymInt[3] output_padding=0, SymInt[3] dilation=1) -> Tensor
12503
12700
  python_module: nn
12504
12701
  dispatch:
12505
12702
  CPU: slow_conv_transpose3d_cpu
12506
12703
  CUDA: slow_conv_transpose3d_cuda
12507
12704
 
12508
- - func: thnn_conv2d.out(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias=None, int[2] stride=1, int[2] padding=0, *, Tensor(a!) out) -> Tensor(a!)
12705
+ - func: thnn_conv2d.out(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0, *, Tensor(a!) out) -> Tensor(a!)
12509
12706
  python_module: nn
12510
12707
 
12511
- - func: thnn_conv2d(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias=None, int[2] stride=1, int[2] padding=0) -> Tensor
12708
+ - func: thnn_conv2d(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0) -> Tensor
12512
12709
  python_module: nn
12513
12710
 
12514
- - func: _slow_conv2d_forward.output(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias, int[2] stride, int[2] padding, *, Tensor(a!) output) -> Tensor(a!)
12711
+ - func: _slow_conv2d_forward.output(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias, SymInt[2] stride, SymInt[2] padding, *, Tensor(a!) output) -> Tensor(a!)
12515
12712
  python_module: nn
12516
12713
  dispatch:
12517
12714
  CPU: slow_conv2d_forward_out_cpu
12518
12715
  CUDA: slow_conv2d_forward_out_cuda
12519
12716
 
12520
- - func: _slow_conv2d_forward(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias, int[2] stride, int[2] padding) -> Tensor
12717
+ - func: _slow_conv2d_forward(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias, SymInt[2] stride, SymInt[2] padding) -> Tensor
12521
12718
  python_module: nn
12522
12719
  dispatch:
12523
12720
  CPU: slow_conv2d_forward_cpu
12524
12721
  CUDA: slow_conv2d_forward_cuda
12525
12722
 
12526
- - func: _slow_conv2d_backward.grad_input(Tensor grad_output, Tensor self, Tensor weight, int[2] kernel_size, int[2] stride, int[2] padding, *, Tensor(a!) grad_input, Tensor(b!) grad_weight, Tensor(c!) grad_bias) -> (Tensor(a!), Tensor(b!), Tensor(c!))
12723
+ - func: _slow_conv2d_backward.grad_input(Tensor grad_output, Tensor self, Tensor weight, SymInt[2] kernel_size, SymInt[2] stride, SymInt[2] padding, *, Tensor(a!) grad_input, Tensor(b!) grad_weight, Tensor(c!) grad_bias) -> (Tensor(a!), Tensor(b!), Tensor(c!))
12527
12724
  python_module: nn
12528
12725
  dispatch:
12529
12726
  CPU: slow_conv2d_backward_out_cpu
12530
12727
  CUDA: slow_conv2d_backward_out_cuda
12531
12728
 
12532
- - func: _slow_conv2d_backward.output_mask(Tensor grad_output, Tensor self, Tensor weight, int[2] kernel_size, int[2] stride, int[2] padding, bool[3] output_mask) -> (Tensor grad_input, Tensor grad_weight, Tensor grad_bias)
12729
+ - func: _slow_conv2d_backward.output_mask(Tensor grad_output, Tensor self, Tensor weight, SymInt[2] kernel_size, SymInt[2] stride, SymInt[2] padding, bool[3] output_mask) -> (Tensor grad_input, Tensor grad_weight, Tensor grad_bias)
12533
12730
  python_module: nn
12534
12731
  dispatch:
12535
12732
  CPU: slow_conv2d_backward_cpu
12536
12733
  CUDA: slow_conv2d_backward_cuda
12537
12734
  autogen: _slow_conv2d_backward.output_mask_out
12538
12735
 
12539
- - func: _conv_depthwise2d.out(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias, int[2] stride, SymInt[2] padding, int[2] dilation, *, Tensor(a!) out) -> Tensor(a!)
12736
+ - func: _conv_depthwise2d.out(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias, SymInt[2] stride, SymInt[2] padding, SymInt[2] dilation, *, Tensor(a!) out) -> Tensor(a!)
12540
12737
  use_const_ref_for_mutable_tensors: True
12541
12738
  python_module: nn
12542
12739
  dispatch:
12543
12740
  CUDA: conv_depthwise2d_cuda_out
12544
12741
 
12545
- - func: _conv_depthwise2d(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias, int[2] stride, SymInt[2] padding, int[2] dilation) -> Tensor
12742
+ - func: _conv_depthwise2d(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias, SymInt[2] stride, SymInt[2] padding, SymInt[2] dilation) -> Tensor
12546
12743
  python_module: nn
12547
12744
  dispatch:
12548
12745
  CUDA: conv_depthwise2d_cuda
12549
12746
 
12550
- - func: conv_depthwise3d(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias, int[3] stride, SymInt[3] padding, int[3] dilation) -> Tensor
12747
+ - func: conv_depthwise3d(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias, SymInt[3] stride, SymInt[3] padding, SymInt[3] dilation) -> Tensor
12551
12748
  python_module: nn
12552
12749
  dispatch:
12553
12750
  CUDA: conv_depthwise3d_cuda
12554
12751
  autogen: conv_depthwise3d.out
12555
12752
 
12556
- - func: slow_conv3d.out(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0, *, Tensor(a!) out) -> Tensor(a!)
12753
+ - func: slow_conv3d.out(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0, *, Tensor(a!) out) -> Tensor(a!)
12557
12754
  python_module: nn
12558
12755
 
12559
- - func: slow_conv3d(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0) -> Tensor
12756
+ - func: slow_conv3d(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0) -> Tensor
12560
12757
  python_module: nn
12561
12758
 
12562
- - func: slow_conv3d_forward.output(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias, int[3] stride, SymInt[3] padding, *, Tensor(a!) output) -> Tensor(a!)
12759
+ - func: slow_conv3d_forward.output(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias, SymInt[3] stride, SymInt[3] padding, *, Tensor(a!) output) -> Tensor(a!)
12563
12760
  python_module: nn
12564
12761
  dispatch:
12565
12762
  CPU: slow_conv3d_forward_out_cpu
12566
12763
 
12567
- - func: slow_conv3d_forward(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias, int[3] stride, SymInt[3] padding) -> Tensor
12764
+ - func: slow_conv3d_forward(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias, SymInt[3] stride, SymInt[3] padding) -> Tensor
12568
12765
  python_module: nn
12569
12766
  dispatch:
12570
12767
  CPU: slow_conv3d_forward_cpu
12571
12768
 
12572
- - func: slow_conv_dilated2d(Tensor self, Tensor weight, int[2] kernel_size, Tensor? bias=None, int[2] stride=1, SymInt[2] padding=0, int[2] dilation=1) -> Tensor
12769
+ - func: slow_conv_dilated2d(Tensor self, Tensor weight, SymInt[2] kernel_size, Tensor? bias=None, SymInt[2] stride=1, SymInt[2] padding=0, SymInt[2] dilation=1) -> Tensor
12573
12770
  python_module: nn
12574
12771
  dispatch:
12575
12772
  CPU: slow_conv_dilated2d_cpu
12576
12773
  CUDA: slow_conv_dilated2d_cuda
12577
12774
  autogen: slow_conv_dilated2d.out
12578
12775
 
12579
- - func: slow_conv_dilated3d(Tensor self, Tensor weight, int[3] kernel_size, Tensor? bias=None, int[3] stride=1, SymInt[3] padding=0, int[3] dilation=1) -> Tensor
12776
+ - func: slow_conv_dilated3d(Tensor self, Tensor weight, SymInt[3] kernel_size, Tensor? bias=None, SymInt[3] stride=1, SymInt[3] padding=0, SymInt[3] dilation=1) -> Tensor
12580
12777
  python_module: nn
12581
12778
  dispatch:
12582
12779
  CPU: slow_conv_dilated3d_cpu
@@ -14269,19 +14466,20 @@
14269
14466
  variants: function
14270
14467
  tags: nondeterministic_seeded
14271
14468
 
14272
- - func: _scaled_dot_product_flash_attention(Tensor query, Tensor key, Tensor value, float dropout_p=0.0, bool is_causal=False, bool return_debug_mask=False, *, float? scale=None) -> (Tensor ouput, Tensor logsumexp, Tensor cum_seq_q, Tensor cum_seq_k, int max_q, int max_k, Tensor philox_seed, Tensor philox_offset, Tensor debug_attn_mask)
14469
+ - func: _scaled_dot_product_flash_attention(Tensor query, Tensor key, Tensor value, float dropout_p=0.0, bool is_causal=False, bool return_debug_mask=False, *, float? scale=None) -> (Tensor output, Tensor logsumexp, Tensor cum_seq_q, Tensor cum_seq_k, SymInt max_q, SymInt max_k, Tensor philox_seed, Tensor philox_offset, Tensor debug_attn_mask)
14273
14470
  dispatch:
14274
14471
  CPU: _scaled_dot_product_flash_attention_cpu
14275
14472
  CUDA: _scaled_dot_product_flash_attention_cuda
14276
14473
  NestedTensorCUDA: _scaled_dot_product_flash_attention_nestedtensor_cuda
14277
14474
  tags: nondeterministic_seeded
14278
14475
 
14279
- - func: _scaled_dot_product_flash_attention_backward(Tensor grad_out, Tensor query, Tensor key, Tensor value, Tensor out, Tensor logsumexp, Tensor cum_seq_q, Tensor cum_seq_k, int max_q, int max_k, float dropout_p, bool is_causal, Tensor philox_seed, Tensor philox_offset, *, float? scale=None) -> (Tensor grad_query, Tensor grad_key, Tensor grad_value)
14476
+ - func: _scaled_dot_product_flash_attention_backward(Tensor grad_out, Tensor query, Tensor key, Tensor value, Tensor out, Tensor logsumexp, Tensor cum_seq_q, Tensor cum_seq_k, SymInt max_q, SymInt max_k, float dropout_p, bool is_causal, Tensor philox_seed, Tensor philox_offset, *, float? scale=None) -> (Tensor grad_query, Tensor grad_key, Tensor grad_value)
14280
14477
  device_check: NoCheck
14281
14478
  variants: function
14282
14479
  dispatch:
14283
14480
  CPU: _scaled_dot_product_flash_attention_backward_cpu
14284
14481
  CUDA: _scaled_dot_product_flash_attention_backward_cuda
14482
+ NestedTensorCUDA: _scaled_dot_product_flash_attention_backward_nested
14285
14483
 
14286
14484
  - func: _scaled_dot_product_efficient_attention(Tensor query, Tensor key, Tensor value, Tensor? attn_bias, bool compute_log_sumexp, float dropout_p=0.0, bool is_causal=False, *, float? scale=None) -> (Tensor output, Tensor log_sumexp, Tensor philox_seed, Tensor philox_offset)
14287
14485
  dispatch:
@@ -14295,26 +14493,26 @@
14295
14493
  CUDA: _scaled_dot_product_efficient_attention_backward_cuda
14296
14494
  tags: nondeterministic_seeded
14297
14495
 
14298
- - func: _flash_attention_forward(Tensor query, Tensor key, Tensor value, Tensor cum_seq_q, Tensor cum_seq_k, int max_q, int max_k, float dropout_p, bool is_causal, bool return_debug_mask, *, float? scale=None) -> (Tensor output, Tensor softmax_logsumexp, Tensor philox_seed, Tensor philox_offset, Tensor debug_attn_mask)
14496
+ - func: _flash_attention_forward(Tensor query, Tensor key, Tensor value, Tensor? cum_seq_q, Tensor? cum_seq_k, SymInt max_q, SymInt max_k, float dropout_p, bool is_causal, bool return_debug_mask, *, float? scale=None) -> (Tensor output, Tensor softmax_logsumexp, Tensor philox_seed, Tensor philox_offset, Tensor debug_attn_mask)
14299
14497
  variants: function
14300
14498
  dispatch:
14301
14499
  CUDA: _flash_attention_forward
14302
14500
  tags: nondeterministic_seeded
14303
14501
 
14304
- - func: _flash_attention_backward(Tensor grad_out, Tensor query, Tensor key, Tensor value, Tensor out, Tensor logsumexp, Tensor cum_seq_q, Tensor cum_seq_k, int max_q, int max_k, float dropout_p, bool is_causal, Tensor philox_seed, Tensor philox_offset, *, float? scale=None) -> (Tensor, Tensor, Tensor)
14502
+ - func: _flash_attention_backward(Tensor grad_out, Tensor query, Tensor key, Tensor value, Tensor out, Tensor logsumexp, Tensor cum_seq_q, Tensor cum_seq_k, SymInt max_q, SymInt max_k, float dropout_p, bool is_causal, Tensor philox_seed, Tensor philox_offset, *, float? scale=None) -> (Tensor, Tensor, Tensor)
14305
14503
  device_check: NoCheck
14306
14504
  variants: function
14307
14505
  dispatch:
14308
14506
  CUDA: _flash_attention_backward
14309
14507
 
14310
14508
  # Returns ouput, logsumexp if compute_logsumexp
14311
- - func: _efficient_attention_forward(Tensor query, Tensor key, Tensor value, Tensor? bias, Tensor? cu_seqlens_q, Tensor? cu_seqlens_k, int? max_seqlen_q, float dropout_p, int custom_mask_type, bool compute_log_sumexp=False, *, float? scale=None, Tensor? causal_diagonal=None, Tensor? seqlen_k=None) -> (Tensor output, Tensor logsumexp, Tensor philox_seed, Tensor philox_offset)
14509
+ - func: _efficient_attention_forward(Tensor query, Tensor key, Tensor value, Tensor? bias, Tensor? cu_seqlens_q, Tensor? cu_seqlens_k, int? max_seqlen_q, float dropout_p, int custom_mask_type, bool compute_log_sumexp=False, *, float? scale=None, Tensor? causal_diagonal=None, Tensor? seqlen_k=None) -> (Tensor output, Tensor logsumexp, Tensor philox_seed, Tensor philox_offset, SymInt max_seqlen_batch_q, SymInt max_seqlen_batch_k)
14312
14510
  variants: function
14313
14511
  dispatch:
14314
14512
  CUDA: _efficient_attention_forward
14315
14513
  tags: nondeterministic_seeded
14316
14514
 
14317
- - func: _efficient_attention_backward(Tensor grad_out_, Tensor query, Tensor key, Tensor value, Tensor? bias, Tensor out, Tensor? cu_seqlens_q, Tensor? cu_seqlens_k, int max_seqlen_k, int max_seqlen_q, Tensor logsumexp, float dropout_p, Tensor philox_seed, Tensor philox_offset, int custom_mask_type, bool bias_requires_grad, *, float? scale=None, int? num_splits_key=None) -> (Tensor, Tensor, Tensor, Tensor)
14515
+ - func: _efficient_attention_backward(Tensor grad_out_, Tensor query, Tensor key, Tensor value, Tensor? bias, Tensor out, Tensor? cu_seqlens_q, Tensor? cu_seqlens_k, SymInt max_seqlen_q, SymInt max_seqlen_k, Tensor logsumexp, float dropout_p, Tensor philox_seed, Tensor philox_offset, int custom_mask_type, bool bias_requires_grad, *, float? scale=None, int? num_splits_key=None) -> (Tensor, Tensor, Tensor, Tensor)
14318
14516
  device_check: NoCheck
14319
14517
  variants: function
14320
14518
  dispatch:
@@ -14422,12 +14620,16 @@
14422
14620
  tags: pointwise
14423
14621
 
14424
14622
  - func: special_chebyshev_polynomial_t.x_scalar(Scalar x, Tensor n) -> Tensor
14623
+ dispatch:
14624
+ CompositeExplicitAutograd: special_chebyshev_polynomial_t
14425
14625
  device_check: NoCheck
14426
14626
  python_module: special
14427
14627
  variants: function
14428
14628
  tags: pointwise
14429
14629
 
14430
14630
  - func: special_chebyshev_polynomial_t.n_scalar(Tensor x, Scalar n) -> Tensor
14631
+ dispatch:
14632
+ CompositeExplicitAutograd: special_chebyshev_polynomial_t
14431
14633
  device_check: NoCheck
14432
14634
  python_module: special
14433
14635
  variants: function
@@ -14444,6 +14646,8 @@
14444
14646
  tags: pointwise
14445
14647
 
14446
14648
  - func: special_chebyshev_polynomial_t.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14649
+ dispatch:
14650
+ CompositeExplicitAutograd: special_chebyshev_polynomial_t_out
14447
14651
  device_check: NoCheck
14448
14652
  python_module: special
14449
14653
  variants: function
@@ -14465,12 +14669,16 @@
14465
14669
  tags: pointwise
14466
14670
 
14467
14671
  - func: special_chebyshev_polynomial_u.x_scalar(Scalar x, Tensor n) -> Tensor
14672
+ dispatch:
14673
+ CompositeExplicitAutograd: special_chebyshev_polynomial_u
14468
14674
  device_check: NoCheck
14469
14675
  python_module: special
14470
14676
  variants: function
14471
14677
  tags: pointwise
14472
14678
 
14473
14679
  - func: special_chebyshev_polynomial_u.n_scalar(Tensor x, Scalar n) -> Tensor
14680
+ dispatch:
14681
+ CompositeExplicitAutograd: special_chebyshev_polynomial_u
14474
14682
  device_check: NoCheck
14475
14683
  python_module: special
14476
14684
  variants: function
@@ -14487,6 +14695,8 @@
14487
14695
  tags: pointwise
14488
14696
 
14489
14697
  - func: special_chebyshev_polynomial_u.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14698
+ dispatch:
14699
+ CompositeExplicitAutograd: special_chebyshev_polynomial_u_out
14490
14700
  device_check: NoCheck
14491
14701
  python_module: special
14492
14702
  variants: function
@@ -14508,12 +14718,16 @@
14508
14718
  tags: pointwise
14509
14719
 
14510
14720
  - func: special_chebyshev_polynomial_v.x_scalar(Scalar x, Tensor n) -> Tensor
14721
+ dispatch:
14722
+ CompositeExplicitAutograd: special_chebyshev_polynomial_v
14511
14723
  device_check: NoCheck
14512
14724
  python_module: special
14513
14725
  variants: function
14514
14726
  tags: pointwise
14515
14727
 
14516
14728
  - func: special_chebyshev_polynomial_v.n_scalar(Tensor x, Scalar n) -> Tensor
14729
+ dispatch:
14730
+ CompositeExplicitAutograd: special_chebyshev_polynomial_v
14517
14731
  device_check: NoCheck
14518
14732
  python_module: special
14519
14733
  variants: function
@@ -14530,6 +14744,8 @@
14530
14744
  tags: pointwise
14531
14745
 
14532
14746
  - func: special_chebyshev_polynomial_v.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14747
+ dispatch:
14748
+ CompositeExplicitAutograd: special_chebyshev_polynomial_v_out
14533
14749
  device_check: NoCheck
14534
14750
  python_module: special
14535
14751
  variants: function
@@ -14551,12 +14767,16 @@
14551
14767
  tags: pointwise
14552
14768
 
14553
14769
  - func: special_chebyshev_polynomial_w.x_scalar(Scalar x, Tensor n) -> Tensor
14770
+ dispatch:
14771
+ CompositeExplicitAutograd: special_chebyshev_polynomial_w
14554
14772
  device_check: NoCheck
14555
14773
  python_module: special
14556
14774
  variants: function
14557
14775
  tags: pointwise
14558
14776
 
14559
14777
  - func: special_chebyshev_polynomial_w.n_scalar(Tensor x, Scalar n) -> Tensor
14778
+ dispatch:
14779
+ CompositeExplicitAutograd: special_chebyshev_polynomial_w
14560
14780
  device_check: NoCheck
14561
14781
  python_module: special
14562
14782
  variants: function
@@ -14573,6 +14793,8 @@
14573
14793
  tags: pointwise
14574
14794
 
14575
14795
  - func: special_chebyshev_polynomial_w.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14796
+ dispatch:
14797
+ CompositeExplicitAutograd: special_chebyshev_polynomial_w_out
14576
14798
  device_check: NoCheck
14577
14799
  python_module: special
14578
14800
  variants: function
@@ -14594,12 +14816,16 @@
14594
14816
  tags: pointwise
14595
14817
 
14596
14818
  - func: special_hermite_polynomial_h.x_scalar(Scalar x, Tensor n) -> Tensor
14819
+ dispatch:
14820
+ CompositeExplicitAutograd: special_hermite_polynomial_h
14597
14821
  device_check: NoCheck
14598
14822
  python_module: special
14599
14823
  variants: function
14600
14824
  tags: pointwise
14601
14825
 
14602
14826
  - func: special_hermite_polynomial_h.n_scalar(Tensor x, Scalar n) -> Tensor
14827
+ dispatch:
14828
+ CompositeExplicitAutograd: special_hermite_polynomial_h
14603
14829
  device_check: NoCheck
14604
14830
  python_module: special
14605
14831
  variants: function
@@ -14616,6 +14842,8 @@
14616
14842
  tags: pointwise
14617
14843
 
14618
14844
  - func: special_hermite_polynomial_h.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14845
+ dispatch:
14846
+ CompositeExplicitAutograd: special_hermite_polynomial_h_out
14619
14847
  device_check: NoCheck
14620
14848
  python_module: special
14621
14849
  variants: function
@@ -14637,12 +14865,16 @@
14637
14865
  tags: pointwise
14638
14866
 
14639
14867
  - func: special_hermite_polynomial_he.x_scalar(Scalar x, Tensor n) -> Tensor
14868
+ dispatch:
14869
+ CompositeExplicitAutograd: special_hermite_polynomial_he
14640
14870
  device_check: NoCheck
14641
14871
  python_module: special
14642
14872
  variants: function
14643
14873
  tags: pointwise
14644
14874
 
14645
14875
  - func: special_hermite_polynomial_he.n_scalar(Tensor x, Scalar n) -> Tensor
14876
+ dispatch:
14877
+ CompositeExplicitAutograd: special_hermite_polynomial_he
14646
14878
  device_check: NoCheck
14647
14879
  python_module: special
14648
14880
  variants: function
@@ -14659,6 +14891,8 @@
14659
14891
  tags: pointwise
14660
14892
 
14661
14893
  - func: special_hermite_polynomial_he.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14894
+ dispatch:
14895
+ CompositeExplicitAutograd: special_hermite_polynomial_he_out
14662
14896
  device_check: NoCheck
14663
14897
  python_module: special
14664
14898
  variants: function
@@ -14680,12 +14914,16 @@
14680
14914
  tags: pointwise
14681
14915
 
14682
14916
  - func: special_laguerre_polynomial_l.x_scalar(Scalar x, Tensor n) -> Tensor
14917
+ dispatch:
14918
+ CompositeExplicitAutograd: special_laguerre_polynomial_l
14683
14919
  device_check: NoCheck
14684
14920
  python_module: special
14685
14921
  variants: function
14686
14922
  tags: pointwise
14687
14923
 
14688
14924
  - func: special_laguerre_polynomial_l.n_scalar(Tensor x, Scalar n) -> Tensor
14925
+ dispatch:
14926
+ CompositeExplicitAutograd: special_laguerre_polynomial_l
14689
14927
  device_check: NoCheck
14690
14928
  python_module: special
14691
14929
  variants: function
@@ -14702,6 +14940,8 @@
14702
14940
  tags: pointwise
14703
14941
 
14704
14942
  - func: special_laguerre_polynomial_l.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14943
+ dispatch:
14944
+ CompositeExplicitAutograd: special_laguerre_polynomial_l_out
14705
14945
  device_check: NoCheck
14706
14946
  python_module: special
14707
14947
  variants: function
@@ -14723,12 +14963,16 @@
14723
14963
  tags: pointwise
14724
14964
 
14725
14965
  - func: special_legendre_polynomial_p.x_scalar(Scalar x, Tensor n) -> Tensor
14966
+ dispatch:
14967
+ CompositeExplicitAutograd: special_legendre_polynomial_p
14726
14968
  device_check: NoCheck
14727
14969
  python_module: special
14728
14970
  variants: function
14729
14971
  tags: pointwise
14730
14972
 
14731
14973
  - func: special_legendre_polynomial_p.n_scalar(Tensor x, Scalar n) -> Tensor
14974
+ dispatch:
14975
+ CompositeExplicitAutograd: special_legendre_polynomial_p
14732
14976
  device_check: NoCheck
14733
14977
  python_module: special
14734
14978
  variants: function
@@ -14745,6 +14989,8 @@
14745
14989
  tags: pointwise
14746
14990
 
14747
14991
  - func: special_legendre_polynomial_p.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
14992
+ dispatch:
14993
+ CompositeExplicitAutograd: special_legendre_polynomial_p_out
14748
14994
  device_check: NoCheck
14749
14995
  python_module: special
14750
14996
  variants: function
@@ -14856,12 +15102,16 @@
14856
15102
  tags: pointwise
14857
15103
 
14858
15104
  - func: special_shifted_chebyshev_polynomial_t.x_scalar(Scalar x, Tensor n) -> Tensor
15105
+ dispatch:
15106
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_t
14859
15107
  device_check: NoCheck
14860
15108
  python_module: special
14861
15109
  variants: function
14862
15110
  tags: pointwise
14863
15111
 
14864
15112
  - func: special_shifted_chebyshev_polynomial_t.n_scalar(Tensor x, Scalar n) -> Tensor
15113
+ dispatch:
15114
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_t
14865
15115
  device_check: NoCheck
14866
15116
  python_module: special
14867
15117
  variants: function
@@ -14878,6 +15128,8 @@
14878
15128
  tags: pointwise
14879
15129
 
14880
15130
  - func: special_shifted_chebyshev_polynomial_t.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
15131
+ dispatch:
15132
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_t_out
14881
15133
  device_check: NoCheck
14882
15134
  python_module: special
14883
15135
  variants: function
@@ -14899,12 +15151,16 @@
14899
15151
  tags: pointwise
14900
15152
 
14901
15153
  - func: special_shifted_chebyshev_polynomial_u.x_scalar(Scalar x, Tensor n) -> Tensor
15154
+ dispatch:
15155
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_u
14902
15156
  device_check: NoCheck
14903
15157
  python_module: special
14904
15158
  variants: function
14905
15159
  tags: pointwise
14906
15160
 
14907
15161
  - func: special_shifted_chebyshev_polynomial_u.n_scalar(Tensor x, Scalar n) -> Tensor
15162
+ dispatch:
15163
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_u
14908
15164
  device_check: NoCheck
14909
15165
  python_module: special
14910
15166
  variants: function
@@ -14921,6 +15177,8 @@
14921
15177
  tags: pointwise
14922
15178
 
14923
15179
  - func: special_shifted_chebyshev_polynomial_u.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
15180
+ dispatch:
15181
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_u_out
14924
15182
  device_check: NoCheck
14925
15183
  python_module: special
14926
15184
  variants: function
@@ -14942,12 +15200,16 @@
14942
15200
  tags: pointwise
14943
15201
 
14944
15202
  - func: special_shifted_chebyshev_polynomial_v.x_scalar(Scalar x, Tensor n) -> Tensor
15203
+ dispatch:
15204
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_v
14945
15205
  device_check: NoCheck
14946
15206
  python_module: special
14947
15207
  variants: function
14948
15208
  tags: pointwise
14949
15209
 
14950
15210
  - func: special_shifted_chebyshev_polynomial_v.n_scalar(Tensor x, Scalar n) -> Tensor
15211
+ dispatch:
15212
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_v
14951
15213
  device_check: NoCheck
14952
15214
  python_module: special
14953
15215
  variants: function
@@ -14964,6 +15226,8 @@
14964
15226
  tags: pointwise
14965
15227
 
14966
15228
  - func: special_shifted_chebyshev_polynomial_v.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
15229
+ dispatch:
15230
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_v_out
14967
15231
  device_check: NoCheck
14968
15232
  python_module: special
14969
15233
  variants: function
@@ -14985,12 +15249,16 @@
14985
15249
  tags: pointwise
14986
15250
 
14987
15251
  - func: special_shifted_chebyshev_polynomial_w.x_scalar(Scalar x, Tensor n) -> Tensor
15252
+ dispatch:
15253
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_w
14988
15254
  device_check: NoCheck
14989
15255
  python_module: special
14990
15256
  variants: function
14991
15257
  tags: pointwise
14992
15258
 
14993
15259
  - func: special_shifted_chebyshev_polynomial_w.n_scalar(Tensor x, Scalar n) -> Tensor
15260
+ dispatch:
15261
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_w
14994
15262
  device_check: NoCheck
14995
15263
  python_module: special
14996
15264
  variants: function
@@ -15007,6 +15275,8 @@
15007
15275
  tags: pointwise
15008
15276
 
15009
15277
  - func: special_shifted_chebyshev_polynomial_w.x_scalar_out(Scalar x, Tensor n, *, Tensor(a!) out) -> Tensor(a!)
15278
+ dispatch:
15279
+ CompositeExplicitAutograd: special_shifted_chebyshev_polynomial_w_out
15010
15280
  device_check: NoCheck
15011
15281
  python_module: special
15012
15282
  variants: function