1# Be extra careful when you edit this file, because it affects AOTInductor ABI compatbility. See 2# https://github.com/pytorch/pytorch/blob/7e86a7c0155295539996e0cf422883571126073e/torchgen/gen.py#L2424-L2436 3# for details. 4# 5# The inductor_fallback_ops list is based on the fallback ops from torch/_inductor/lowering.py. 6# Generally speaking, it is ok to add a new op to the list, but you need to run 7# `python torchgen/gen.py --update-aoti-c-shim` in order to regenerate C shim header files. 8# But it is NOT ok to remove an existing fallback op from the list, since that will break 9# some existing AOTInductor-compiled models. 10inductor_fallback_ops = { 11 "aten._adaptive_avg_pool2d_backward.default", 12 "aten._adaptive_avg_pool2d.default", 13 "aten._adaptive_avg_pool3d.default", 14 "aten._adaptive_avg_pool3d_backward.default", 15 "aten.adaptive_max_pool2d_backward.default", 16 "aten.adaptive_max_pool2d.default", 17 "aten.adaptive_max_pool3d.default", 18 "aten.adaptive_max_pool3d_backward.default", 19 "aten.addbmm.default", 20 "aten._addmm_activation.default", 21 "aten.addmm.out", 22 "aten.addmv.default", 23 "aten.angle.default", 24 "aten.avg_pool2d_backward.default", 25 "aten.avg_pool2d.default", 26 "aten.avg_pool3d_backward.default", 27 "aten.avg_pool3d.default", 28 "aten.bernoulli_.float", 29 "aten.bernoulli_.Tensor", 30 "aten.bmm.out", 31 "aten.bucketize.Tensor", 32 "aten.cat.default", 33 "aten._cdist_backward.default", 34 "aten._cdist_forward.default", 35 "aten.cholesky_inverse.default", 36 "aten.cholesky_solve.default", 37 "aten.convolution_backward.default", 38 "aten._cudnn_rnn.default", 39 "aten._cudnn_rnn_backward.default", 40 "aten.convolution.default", 41 "aten.cummax.default", 42 "aten.cummin.default", 43 "aten.cumprod.default", 44 "aten.cumsum.default", 45 "aten._efficient_attention_backward.default", 46 "aten._efficient_attention_forward.default", 47 "aten._efficientzerotensor.default", 48 "aten._embedding_bag.default", 49 "aten._embedding_bag_dense_backward.default", 50 "aten._embedding_bag_forward_only.default", 51 "aten._embedding_bag_per_sample_weights_backward.default", 52 "aten.exponential.default", 53 "aten._fft_c2c.default", 54 "aten._fft_r2c.default", 55 "aten._flash_attention_backward.default", 56 "aten._flash_attention_forward.default", 57 "aten.fractional_max_pool2d_backward.default", 58 "aten.fractional_max_pool2d.default", 59 "aten.fractional_max_pool3d.default", 60 "aten.fractional_max_pool3d_backward.default", 61 "aten._fused_moving_avg_obs_fq_helper.default", 62 "aten._fused_moving_avg_obs_fq_helper_functional.default", 63 "aten.gcd.default", 64 "aten.geqrf.default", 65 "aten.grid_sampler_2d_backward.default", 66 "aten.histc.default", 67 "aten.histogram.bin_ct", 68 "aten._histogramdd_bin_edges.default", 69 "aten._histogramdd_from_bin_cts.default", 70 "aten.index_put.default", 71 "aten.index_reduce.default", 72 "aten.index.Tensor", 73 "aten.kthvalue.default", 74 "aten.logcumsumexp.default", 75 "aten.lu_unpack.default", 76 "aten.masked_scatter.default", 77 "aten.masked_scatter_backward.default", 78 "aten.max_pool2d_with_indices_backward.default", 79 "aten.max_pool2d_with_indices.default", 80 "aten.max_pool3d_with_indices.default", 81 "aten.max_pool3d_with_indices_backward.default", 82 "aten.max_unpool2d.default", 83 "aten.max_unpool3d.default", 84 "aten.median.default", 85 "aten.mm.out", 86 "aten.mode.default", 87 "aten.mul.Scalar", 88 "aten.mul.Tensor", 89 "aten.nanmedian.default", 90 "aten.native_dropout.default", 91 "aten.normal_functional.default", 92 "aten.nonzero.default", 93 "aten.ormqr.default", 94 "aten._pdist_backward.default", 95 "aten._pdist_forward.default", 96 "aten.polar.default", 97 "aten.pow.Scalar", 98 "aten.pow.Tensor_Scalar", 99 "aten.pow.Tensor_Tensor", 100 "aten.rand.default", 101 "aten.rand.generator", 102 "aten.randint.default", 103 "aten.randint.generator", 104 "aten.randint.low", 105 "aten.randint.low_out", 106 "aten.randn.default", 107 "aten.randn.generator", 108 "aten.randperm.default", 109 "aten.repeat_interleave.Tensor", 110 "aten.replication_pad1d_backward.default", 111 "aten.replication_pad2d_backward.default", 112 "aten.reshape.default", 113 "aten.resize_.default", 114 "aten.resize_as_.default", 115 "aten._scaled_dot_product_efficient_attention_backward.default", 116 "aten._scaled_dot_product_efficient_attention.default", 117 "aten._scaled_dot_product_flash_attention_backward.default", 118 "aten._scaled_dot_product_flash_attention.default", 119 "aten._scaled_dot_product_cudnn_attention_backward.default", 120 "aten._scaled_dot_product_cudnn_attention.default", 121 "aten._scaled_dot_product_flash_attention_for_cpu_backward.default", 122 "aten._scaled_dot_product_flash_attention_for_cpu.default", 123 "aten._scaled_mm.default", 124 "aten.scatter_reduce.two_out", 125 "aten.scatter.src_out", 126 "aten.scatter.value_out", 127 "aten.searchsorted.default", 128 "aten._segment_reduce_backward.default", 129 "aten.segment_reduce.default", 130 "aten.slice.Tensor", 131 "aten.soft_margin_loss_backward.default", 132 "aten.sort.default", 133 "aten.sort.stable", 134 "aten._sparse_coo_tensor_with_dims_and_tensors.default", 135 "aten._thnn_fused_lstm_cell.default", 136 "aten.topk.default", 137 "aten._to_sparse.default", 138 "aten.to_sparse.default", 139 "aten.triangular_solve.default", 140 "aten._trilinear.default", 141 "aten.uniform.default", 142 "aten.upsample_bicubic2d_backward.default", 143 "aten.upsample_linear1d_backward.default", 144 "aten.upsample_trilinear3d_backward.default", 145 "aten.view_as_complex.default", 146 "aten.view_as_real.default", 147 "aten.view.dtype", 148 "aten.zeros.names", 149} 150