# Copyright (c) 2020 Huawei Technologies Co., Ltd
# All rights reserved.
#
# Licensed under the BSD 3-Clause License  (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://opensource.org/licenses/BSD-3-Clause
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# List of ops that register hooks

functional:
  - conv1d
  - conv2d
  - conv3d
  - conv_transpose1d
  - conv_transpose2d
  - conv_transpose3d
  - conv_tbc
  - avg_pool1d
  - avg_pool2d
  - avg_pool3d
  - fractional_max_pool2d_with_indices
  - fractional_max_pool2d
  - fractional_max_pool3d_with_indices
  - fractional_max_pool3d
  - max_pool1d_with_indices
  - max_pool1d
  - max_pool2d_with_indices
  - max_pool2d
  - max_pool3d_with_indices
  - max_pool3d
  - max_unpool1d
  - max_unpool2d
  - max_unpool3d
  - lp_pool2d
  - lp_pool1d
  - adaptive_max_pool1d_with_indices
  - adaptive_max_pool1d
  - adaptive_max_pool2d_with_indices
  - adaptive_max_pool2d
  - adaptive_max_pool3d_with_indices
  - adaptive_max_pool3d
  - adaptive_avg_pool1d
  - adaptive_avg_pool2d
  - adaptive_avg_pool3d
  - dropout
  - alpha_dropout
  - dropout2d
  - dropout3d
  - feature_alpha_dropout
  - threshold
  - threshold_
  - relu
  - relu_
  - glu
  - hardtanh
  - hardtanh_
  - relu6
  - elu
  - elu_
  - selu
  - selu_
  - celu
  - celu_
  - leaky_relu
  - leaky_relu_
  - prelu
  - rrelu
  - rrelu_
  - logsigmoid
  - gelu
  - hardshrink
  - tanhshrink
  - softsign
  - softplus
  - softmin
  - softmax
  - gumbel_softmax
  - log_softmax
  - softshrink
  - tanh
  - sigmoid
  - hardsigmoid
  - linear
  - bilinear
  - silu
  - hardswish
  - embedding
  - embedding_bag
  - batch_norm
  - instance_norm
  - layer_norm
  - group_norm
  - local_response_norm
  - ctc_loss
  - nll_loss
  - poisson_nll_loss
  - gaussian_nll_loss
  - kl_div
  - cross_entropy
  - binary_cross_entropy
  - binary_cross_entropy_with_logits
  - smooth_l1_loss
  - l1_loss
  - mse_loss
  - margin_ranking_loss
  - hinge_embedding_loss
  - multilabel_margin_loss
  - soft_margin_loss
  - multilabel_soft_margin_loss
  - cosine_embedding_loss
  - multi_margin_loss
  - pixel_shuffle
  - pixel_unshuffle
  - channel_shuffle
  - upsample
  - interpolate
  - upsample_nearest
  - upsample_bilinear
  - grid_sample
  - affine_grid
  - pad
  - pairwise_distance
  - pdist
  - cosine_similarity
  - one_hot
  - triplet_margin_loss
  - triplet_margin_with_distance_loss
  - normalize
  - unfold
  - fold
  - multi_head_attention_forward
  - scaled_dot_product_attention
  - lp_pool3d
  - dropout1d
  - mish
  - huber_loss

tensor:
  - __add__
  - __and__
  - __bool__
  - __div__
  - __eq__
  - __floordiv__
  - __ge__
  - __gt__
  - __iadd__
  - __iand__
  - __idiv__
  - __ifloordiv__
  - __ilshift__
  - __imod__
  - __imul__
  - __ior__
  - __ipow__
  - __irshift__
  - __isub__
  - __ixor__
  - __le__
  - __lshift__
  - __lt__
  - __matmul__
  - __mod__
  - __mul__
  - __ne__
  - __nonzero__
  - __or__
  - __pow__
  - __radd__
  - __rdiv__
  - __rmod__
  - __rmul__
  - __ror__
  - __rpow__
  - __rshift__
  - __rsub__
  - __rxor__
  - __setitem__
  - __sub__
  - __truediv__
  - __xor__
  - abs
  - abs_
  - absolute
  - absolute_
  - acos
  - acos_
  - acosh
  - acosh_
  - add
  - add_
  - addbmm
  - addbmm_
  - addcdiv
  - addcdiv_
  - addcmul
  - addcmul_
  - addmm
  - addmm_
  - addmv
  - addmv_
  - addr
  - addr_
  - adjoint
  - align_as
  - align_to
  - all
  - allclose
  - amax
  - amin
  - aminmax
  - angle
  - any
  - arccos
  - arccos_
  - arccosh
  - arccosh_
  - arcsin
  - arcsin_
  - arcsinh
  - arcsinh_
  - arctan
  - arctan2
  - arctan2_
  - arctan_
  - arctanh
  - arctanh_
  - argmax
  - argmin
  - argsort
  - argwhere
  - asin
  - asin_
  - asinh
  - asinh_
  - atan
  - atan2
  - atan2_
  - atan_
  - atanh
  - atanh_
  - baddbmm
  - baddbmm_
  - bernoulli
  - bernoulli_
  - bfloat16
  - bincount
  - bitwise_and
  - bitwise_and_
  - bitwise_left_shift
  - bitwise_left_shift_
  - bitwise_not
  - bitwise_not_
  - bitwise_or
  - bitwise_or_
  - bitwise_right_shift
  - bitwise_right_shift_
  - bitwise_xor
  - bitwise_xor_
  - bmm
  - bool
  - broadcast_to
  - byte
  - cauchy_
  - ceil
  - ceil_
  - cfloat
  - char
  - cholesky
  - cholesky_inverse
  - cholesky_solve
  - chunk
  - clamp
  - clamp_
  - clamp_max
  - clamp_max_
  - clamp_min
  - clamp_min_
  - clip
  - clip_
  - conj_physical
  - copysign
  - copysign_
  - corrcoef
  - cos
  - cos_
  - cosh
  - cosh_
  - count_nonzero
  - cov
  - cummax
  - cummin
  - cumprod
  - cumprod_
  - cumsum
  - cumsum_
  - deg2rad
  - deg2rad_
  - det
  - diag
  - diag_embed
  - diagflat
  - diagonal
  - diagonal_scatter
  - diff
  - digamma
  - digamma_
  - dist
  - div
  - div_
  - divide
  - divide_
  - dot
  - double
  - dsplit
  - eig
  - eq
  - eq_
  - equal
  - erf
  - erf_
  - erfc
  - erfc_
  - erfinv
  - erfinv_
  - exp
  - exp2
  - exp2_
  - exp_
  - expand
  - expand_as
  - expm1
  - expm1_
  - exponential_
  - fill_
  - fill_diagonal_
  - fix
  - fix_
  - flatten
  - flip
  - fliplr
  - flipud
  - float
  - float_power
  - float_power_
  - floor
  - floor_
  - floor_divide
  - floor_divide_
  - fmax
  - fmin
  - fmod
  - fmod_
  - frac
  - frac_
  - frexp
  - gather
  - gcd
  - gcd_
  - ge
  - ge_
  - geometric_
  - geqrf
  - ger
  - greater
  - greater_
  - greater_equal
  - greater_equal_
  - gt
  - gt_
  - half
  - hardshrink
  - heaviside
  - heaviside_
  - histc
  - histogram
  - hsplit
  - hypot
  - hypot_
  - i0
  - i0_
  - igamma
  - igamma_
  - igammac
  - igammac_
  - index_add
  - index_add_
  - index_copy
  - index_copy_
  - index_fill
  - index_fill_
  - index_put
  - index_put_
  - index_select
  - inner
  - int
  - inverse
  - isclose
  - isfinite
  - isinf
  - isnan
  - isneginf
  - isposinf
  - isreal
  - kron
  - kthvalue
  - lcm
  - lcm_
  - ldexp
  - ldexp_
  - le
  - le_
  - lerp
  - lerp_
  - less
  - less_
  - less_equal
  - less_equal_
  - lgamma
  - lgamma_
  - log
  - log10
  - log10_
  - log1p
  - log1p_
  - log2
  - log2_
  - log_
  - log_normal_
  - log_softmax
  - logaddexp
  - logaddexp2
  - logcumsumexp
  - logdet
  - logical_and
  - logical_and_
  - logical_not
  - logical_not_
  - logical_or
  - logical_or_
  - logical_xor
  - logical_xor_
  - logit
  - logit_
  - logsumexp
  - long
  - lstsq
  - lt
  - lt_
  - lu
  - lu_solve
  - map2_
  - map_
  - masked_fill
  - masked_fill_
  - masked_scatter
  - masked_scatter_
  - masked_select
  - matmul
  - matrix_exp
  - matrix_power
  - max
  - maximum
  - mean
  - median
  - min
  - minimum
  - mm
  - mode
  - moveaxis
  - movedim
  - msort
  - mul
  - mul_
  - multinomial
  - multiply
  - multiply_
  - mv
  - mvlgamma
  - mvlgamma_
  - nan_to_num
  - nan_to_num_
  - nanmean
  - nanmedian
  - nanquantile
  - nansum
  - narrow
  - narrow_copy
  - ne
  - ne_
  - neg
  - neg_
  - negative
  - negative_
  - nextafter
  - nextafter_
  - nonzero
  - norm
  - normal_
  - not_equal
  - not_equal_
  - numpy
  - orgqr
  - ormqr
  - outer
  - permute
  - pinverse
  - polygamma
  - polygamma_
  - pow
  - pow_
  - prelu
  - prod
  - put_
  - q_zero_point
  - qr
  - quantile
  - rad2deg
  - rad2deg_
  - ravel
  - reciprocal
  - reciprocal_
  - relu
  - relu_
  - remainder
  - remainder_
  - renorm
  - renorm_
  - repeat
  - repeat_interleave
  - reshape
  - reshape_as
  - resize_
  - resize_as_
  - resolve_neg
  - roll
  - rot90
  - round
  - round_
  - rsqrt
  - rsqrt_
  - scatter
  - scatter_
  - scatter_add
  - scatter_add_
  - select
  - sgn
  - sgn_
  - short
  - sigmoid
  - sigmoid_
  - sign
  - sign_
  - signbit
  - sin
  - sin_
  - sinc
  - sinc_
  - sinh
  - sinh_
  - slice_scatter
  - slogdet
  - smm
  - softmax
  - solve
  - sort
  - split
  - split_with_sizes
  - sqrt
  - sqrt_
  - square
  - square_
  - squeeze
  - squeeze_
  - sspaddmm
  - std
  - stft
  - stride
  - sub
  - sub_
  - subtract
  - sum
  - sum_to_size
  - svd
  - swapaxes
  - swapdims
  - swapdims_
  - symeig
  - t
  - t_
  - take
  - take_along_dim
  - tan
  - tan_
  - tanh
  - tanh_
  - tensor_split
  - tile
  - to
  - topk
  - transpose
  - transpose_
  - triangular_solve
  - tril
  - tril_
  - triu
  - triu_
  - true_divide
  - true_divide_
  - trunc
  - trunc_
  - type_as
  - unbind
  - unflatten
  - unfold
  - unique
  - unique_consecutive
  - unsafe_chunk
  - unsafe_split
  - unsafe_split_with_sizes
  - unsqueeze
  - unsqueeze_
  - var
  - vdot
  - view_as
  - vsplit
  - where
  - xlogy
  - xlogy_

torch:
  - linalg.norm
  - linalg.vector_norm
  - linalg.matrix_norm
  - linalg.diagonal
  - linalg.det
  - linalg.slogdet
  - linalg.cond
  - linalg.matrix_rank
  - linalg.qr
  - linalg.lu
  - linalg.lu_factor
  - linalg.svd
  - linalg.svdvals
  - linalg.solve
  - linalg.lstsq
  - linalg.inv
  - linalg.pinv
  - linalg.matrix_exp
  - linalg.matrix_power
  - linalg.cross
  - linalg.matmul
  - linalg.vecdot
  - linalg.multi_dot
  - linalg.householder_product
  - linalg.tensorsolve
  - linalg.vander
  - linalg.cholesky_ex
  - linalg.inv_ex
  - linalg.solve_ex
  - linalg.lu_factor_ex
  - linalg.ldl_factor
  - linalg.ldl_factor_ex
  - _adaptive_avg_pool2d
  - _add_relu
  - _add_relu_
  - _aminmax
  - _batch_norm_impl_index
  - _convolution
  - _foreach_norm
  - _fused_adamw_
  - _softmax_backward_data
  - abs
  - abs_
  - absolute
  - acos
  - acos_
  - acosh
  - acosh_
  - adaptive_avg_pool1d
  - adaptive_max_pool1d
  - add
  - addbmm
  - addcdiv
  - addcmul
  - addmm
  - addmv
  - addmv_
  - addr
  - affine_grid_generator
  - align_tensors
  - all
  - alpha_dropout
  - alpha_dropout_
  - amax
  - amin
  - aminmax
  - angle
  - any
  - arange
  - arccos
  - arccos_
  - arccosh
  - arccosh_
  - arcsin
  - arcsin_
  - arcsinh
  - arcsinh_
  - arctan
  - arctan2
  - arctan_
  - arctanh
  - arctanh_
  - argmax
  - argmin
  - argsort
  - argwhere
  - asin
  - asin_
  - asinh
  - asinh_
  - atan
  - atan2
  - atan_
  - atanh
  - atanh_
  - atleast_1d
  - atleast_2d
  - atleast_3d
  - avg_pool1d
  - baddbmm
  - bartlett_window
  - batch_norm_backward_elemt
  - batch_norm_backward_reduce
  - batch_norm_elemt
  - batch_norm_gather_stats
  - batch_norm_gather_stats_with_counts
  - batch_norm_stats
  - batch_norm_update_stats
  - bernoulli
  - bilinear
  - binary_cross_entropy_with_logits
  - bincount
  - binomial
  - bitwise_and
  - bitwise_not
  - bitwise_or
  - bitwise_xor
  - blackman_window
  - block_diag
  - bmm
  - broadcast_tensors
  - broadcast_to
  - bucketize
  - cartesian_prod
  - cat
  - cdist
  - ceil
  - ceil_
  - celu
  - celu_
  - chain_matmul
  - channel_shuffle
  - cholesky
  - cholesky_inverse
  - cholesky_solve
  - choose_qparams_optimized
  - chunk
  - clamp
  - clamp_
  - clamp_max
  - clamp_max_
  - clamp_min
  - clamp_min_
  - clip
  - clip_
  - clone
  - column_stack
  - combinations
  - concat
  - concatenate
  - constant_pad_nd
  - conv1d
  - conv2d
  - conv3d
  - conv_tbc
  - conv_transpose1d
  - conv_transpose2d
  - conv_transpose3d
  - convolution
  - copysign
  - cos
  - cos_
  - cosh
  - cosh_
  - cosine_embedding_loss
  - cosine_similarity
  - count_nonzero
  - cov
  - cross
  - ctc_loss
  - cummax
  - cummin
  - cumprod
  - cumsum
  - cumulative_trapezoid
  - deg2rad
  - deg2rad_
  - det
  - diag
  - diag_embed
  - diagflat
  - diagonal
  - diagonal_scatter
  - diff
  - digamma
  - dist
  - div
  - divide
  - dot
  - dropout
  - dropout_
  - dsmm
  - dsplit
  - dstack
  - eig
  - einsum
  - embedding
  - embedding_bag
  - embedding_renorm_
  - eq
  - equal
  - erf
  - erf_
  - erfc
  - erfc_
  - erfinv
  - exp
  - exp2
  - exp2_
  - exp_
  - expm1
  - expm1_
  - eye
  - feature_alpha_dropout
  - feature_alpha_dropout_
  - feature_dropout
  - feature_dropout_
  - fill_
  - fix
  - fix_
  - flatten
  - flip
  - fliplr
  - flipud
  - float_power
  - floor
  - floor_
  - floor_divide
  - fmax
  - fmin
  - fmod
  - frac
  - frac_
  - frexp
  - frobenius_norm
  - full
  - full_like
  - gather
  - gcd
  - gcd_
  - ge
  - geqrf
  - ger
  - greater
  - greater_equal
  - grid_sampler
  - grid_sampler_2d
  - grid_sampler_3d
  - group_norm
  - gru
  - gru_cell
  - gt
  - hamming_window
  - hann_window
  - hardshrink
  - heaviside
  - hinge_embedding_loss
  - histc
  - histogram
  - histogramdd
  - hsmm
  - hsplit
  - hspmm
  - hstack
  - hypot
  - i0
  - i0_
  - igamma
  - igammac
  - index_add
  - index_copy
  - index_fill
  - index_put
  - index_put_
  - index_select
  - inner
  - instance_norm
  - inverse
  - isclose
  - isfinite
  - isin
  - isinf
  - isnan
  - isneginf
  - isposinf
  - istft
  - kaiser_window
  - kl_div
  - kron
  - kthvalue
  - layer_norm
  - lcm
  - lcm_
  - ldexp
  - ldexp_
  - le
  - lerp
  - less
  - less_equal
  - lgamma
  - linspace
  - log
  - log10
  - log10_
  - log1p
  - log1p_
  - log2
  - log2_
  - log_
  - log_softmax
  - logaddexp
  - logaddexp2
  - logcumsumexp
  - logdet
  - logical_and
  - logical_not
  - logical_or
  - logical_xor
  - logit
  - logit_
  - logspace
  - logsumexp
  - lstm
  - lstm_cell
  - lstsq
  - lt
  - lu_solve
  - lu_unpack
  - margin_ranking_loss
  - masked_fill
  - masked_scatter
  - masked_select
  - matmul
  - matrix_exp
  - matrix_power
  - matrix_rank
  - max
  - max_pool1d
  - max_pool1d_with_indices
  - max_pool2d
  - max_pool3d
  - maximum
  - mean
  - median
  - min
  - minimum
  - mm
  - mode
  - moveaxis
  - movedim
  - msort
  - mul
  - multinomial
  - multiply
  - mv
  - mvlgamma
  - nan_to_num
  - nan_to_num_
  - nanmean
  - nanmedian
  - nanquantile
  - nansum
  - narrow
  - narrow_copy
  - native_batch_norm
  - native_group_norm
  - native_layer_norm
  - native_norm
  - ne
  - neg
  - neg_
  - negative
  - negative_
  - nextafter
  - nonzero
  - norm
  - norm_except_dim
  - normal
  - not_equal
  - nuclear_norm
  - outer
  - pairwise_distance
  - pdist
  - permute
  - pinverse
  - pixel_shuffle
  - pixel_unshuffle
  - poisson
  - poisson_nll_loss
  - polar
  - polygamma
  - pow
  - prelu
  - prod
  - qr
  - quantile
  - rad2deg
  - rad2deg_
  - range
  - ravel
  - real
  - reciprocal
  - reciprocal_
  - relu
  - relu_
  - remainder
  - renorm
  - repeat_interleave
  - reshape
  - resize_as_
  - resolve_neg
  - roll
  - rot90
  - round
  - round_
  - row_stack
  - rrelu
  - rrelu_
  - rsqrt
  - rsqrt_
  - rsub
  - saddmm
  - scalar_tensor
  - scatter
  - scatter_add
  - searchsorted
  - select
  - selu
  - selu_
  - sgn
  - sigmoid
  - sigmoid_
  - sign
  - signbit
  - sin
  - sin_
  - sinc
  - sinc_
  - sinh
  - sinh_
  - slogdet
  - smm
  - softmax
  - solve
  - sort
  - sparse_coo_tensor
  - split
  - split_with_sizes
  - spmm
  - sqrt
  - sqrt_
  - square
  - square_
  - squeeze
  - sspaddmm
  - stack
  - std
  - std_mean
  - stft
  - sub
  - subtract
  - sum
  - svd
  - swapaxes
  - swapdims
  - symeig
  - t
  - take
  - take_along_dim
  - tan
  - tan_
  - tanh
  - tanh_
  - tensor_split
  - tensordot
  - threshold
  - threshold_
  - tile
  - topk
  - transpose
  - trapz
  - triangular_solve
  - tril
  - tril_indices
  - triplet_margin_loss
  - triu
  - triu_indices
  - true_divide
  - trunc
  - trunc_
  - unbind
  - unflatten
  - unique_consecutive
  - unsafe_chunk
  - unsafe_split
  - unsafe_split_with_sizes
  - unsqueeze
  - vander
  - var
  - var_mean
  - vdot
  - vsplit
  - vstack
  - where
  - xlogy
  - xlogy_

_VF:
  - lstm

torch_npu:
  - one_
  - npu_sort_v2
  - npu_transpose
  - npu_broadcast
  - npu_dtype_cast
  - empty_with_format
  - npu_one_hot
  - npu_stride_add
  - npu_ps_roi_pooling
  - npu_roi_align
  - npu_nms_v4
  - npu_iou
  - npu_nms_with_mask
  - npu_pad
  - npu_bounding_box_encode
  - npu_bounding_box_decode
  - npu_batch_nms
  - npu_slice
  - _npu_dropout
  - npu_indexing
  - npu_ifmr
  - npu_max
  - npu_scatter
  - npu_layer_norm_eval
  - npu_alloc_float_status
  - npu_confusion_transpose
  - npu_bmmV2
  - fast_gelu
  - npu_sub_sample
  - npu_deformable_conv2d
  - npu_mish
  - npu_anchor_response_flags
  - npu_yolo_boxes_encode
  - npu_grid_assign_positive
  - npu_normalize_batch
  - npu_masked_fill_range
  - npu_linear
  - npu_bert_apply_adam
  - npu_giou
  - npu_ciou
  - npu_diou
  - npu_sign_bits_pack
  - npu_sign_bits_unpack
  - npu_flash_attention
  - npu_scaled_masked_softmax
  - npu_rotary_mul
  - npu_roi_align
  - npu_roi_alignbk
  - npu_ptiou
  - npu_fusion_attention
  - npu_dropout_with_add_softmax
  - npu_random_choice_with_mask
  - npu_rotated_iou
  - npu_conv2d
  - npu_conv3d
  - npu_softmax_cross_entropy_with_logits
  - npu_all_gather_base_mm
  - npu_swiglu
  - npu_rms_norm
  - npu_mm_reduce_scatter_base
  - npu_mm_all_reduce_base
  - npu_conv_transpose2d
  - npu_convolution
  - npu_convolution_transpose
  - npu_min
  - npu_nms_rotated
  - npu_reshape
  - npu_rotated_box_decode
  - npu_rotated_box_encode
  - npu_rotated_overlaps
  - npu_silu
  - npu_fused_attention_score
  - npu_multi_head_attention
  - npu_gru
  - npu_incre_flash_attention
  - npu_prompt_flash_attention
  - npu_lstm
  - npu_apply_adam
  - npu_apply_adam_w
  - npu_anti_quant
  - npu_grouped_matmu
  - npu_quant_scatter
  - npu_group_norm_silu
  - npu_format_cast
  - npu_moe_finalize_routing
  - npu_moe_finalize_routing_v2
  - npu_moe_gating_top_k_softmax
  - npu_trans_quant_param
  - npu_gelu
  - npu_geglu
  - npu_ffn
  - npu_quant_matmul
  - npu_format_cast_
  - npu_dynamic_quant
  - npu_moe_compute_expert_tokens
  - npu_weight_quant_batchmatmul
  - npu_dynamic_quant_asymmetric
  - npu_grouped_matmul
  - npu_quant_scatter_
  - npu_group_quant
  - npu_fused_infer_attention_score
  - npu_fused_infer_attention_score_v2
  - npu_quantize
  - npu_fast_gelu
  - scatter_update
  - scatter_update_
  - npu_dequant_swiglu_quant
  - npu_moe_init_routing
  - npu_moe_init_routing_v2
  - npu_scatter_nd_update_
  - npu_scatter_nd_update
  - npu_prefetch
  - npu_dynamic_block_quant
  - npu_add_rms_norm
  - _npu_flash_attention
  - _npu_rotary_embedding
  - _npu_reshape_and_cache
  - _npu_paged_attention
  - npu_moe_gating_top_k
  - npu_apply_rotary_pos_emb
  - npu_dynamic_mx_quant
  - npu_fusion_attention_v2
  - npu_scatter_pa_kv_cache
  - npu_grouped_dynamic_mx_quant
  - npu_fused_matmul
  - npu_gelu_quant
  - npu_add_rms_norm_v2
  - npu_all_gather_quant_mm
  - npu_quant_mm_reduce_scatter
  - npu_add_quant_gmm_
  - gather_pa_kv_cache
  - npu_attention_update
  - npu_scatter_pa_cache
  - npu_quant_reduce_scatter
  - npu_quant_all_reduce
  - npu_grouped_matmul_add_
  - npu_grouped_matmul_finalize_routing
  - npu_grouped_matmul_swiglu_quant_v2
  - npu_kronecker_quant
  - npu_quant_fusion_attention
  - npu_dynamic_mx_quant_with_dual_axis
  - npu_grouped_dynamic_block_quant
  - npu_all_to_all_matmul
  - npu_matmul_all_to_all
  - npu_mla_prolog_v3
  - npu_quant_matmul_all_to_all
  - npu_dynamic_dual_level_mx_quant
  - npu_transpose_quant_batchmatmul
  - npu_transpose_batchmatmul
  - npu_dual_level_quant_matmul
  - npu_add_quant_matmul_
  - npu_all_to_all_quant_matmul
  - npu_quant_gmm_alltoallv
  - npu_alltoallv_gmm
  - npu_alltoallv_quant_gmm
  - npu_gmm_alltoallv
  - npu_mhc_pre
  - npu_mhc_post
  - npu_mhc_sinkhorn
  - npu_dynamic_block_mx_quant
  - npu_moe_distribute_dispatch
  - npu_moe_distribute_dispatch_v2
  - npu_moe_distribute_dispatch_setup
  - npu_moe_distribute_dispatch_teardown
  - npu_moe_distribute_combine
  - npu_moe_distribute_combine_v2
  - npu_moe_distribute_combine_setup
  - npu_moe_distribute_combine_teardown
  - npu_rms_norm_dynamic_mx_quant
  - npu_add_rms_norm_dynamic_mx_quant
  - npu_sparse_lightning_indexer_grad_kl_loss
  - npu_swiglu_mx_quant
  - npu_fused_causal_conv1d
  - npu_quant_lightning_indexer
  - npu_rms_norm_dynamic_quant
  - npu_dynamic_quant
  - npu_advance_step_flashattn
  - npu_clear_float_status
  - npu_convert_weight_to_int4pack
  - npu_cross_entropy_loss
  - npu_gather_sparse_index
  - npu_gelu_mul
  - npu_get_float_status
  - npu_group_norm_swish
  - npu_interleave_rope
  - npu_kv_quant_sparse_flash_attention
  - npu_kv_rmsnorm_rope_cache
  - npu_lightning_indexer
  - npu_mla_prolog
  - npu_mla_prolog_v2
  - npu_moe_distribute_combine_add_rms_norm
  - npu_moe_re_routing
  - npu_moe_update_expert
  - npu_quant_matmul_reduce_sum
  - npu_recurrent_gated_delta_rule
  - npu_sim_exponential_
  - npu_sparse_flash_attention
  - npu_swiglu_quant
  - npu_top_k_top_p
  - npu_top_k_top_p_sample
  - copy_memory_
  - empty_with_swapped_memory
  - erase_stream
  - get_device_limit
  - get_stream_limit
  - matmul_checksum
  - npu_add_rms_norm_dynamic_quant
  - npu_add_rms_norm_quant
  - npu_attention_to_ffn
  - npu_block_sparse_attention
  - npu_clipped_swiglu
  - npu_dense_lightning_indexer_grad_kl_loss
  - npu_dense_lightning_indexer_softmax_lse
  - npu_ffn_to_attention
  - npu_fused_floyd_attention
  - npu_fusion_attention_v3
  - npu_mrope
  - npu_quant_matmul_gelu
  - npu_rms_norm_quant
  - reset_stream_limit
  - save_npugraph_tensor
  - set_device_limit
  - set_stream_limit

aten:
  - signbit
  - logical_not_
  - _foreach_copy_
  - clamp
  - hardswish_
  - arcsin_
  - logsumexp
  - native_group_norm
  - special_i1e
  - bitwise_and
  - new_full
  - fft_ihfft
  - _adaptive_avg_pool2d
  - scatter_add
  - abs
  - selu
  - exponential
  - silu
  - _native_batch_norm_legit_functional
  - special_hermite_polynomial_h
  - tanh_
  - log_sigmoid_forward
  - _fft_c2c
  - heaviside_
  - sigmoid_backward
  - as_strided_scatter
  - trace
  - _assert_async
  - avg_pool2d_backward
  - exp2
  - binary_cross_entropy_backward
  - geometric
  - fft_ihfftn
  - smooth_l1_loss
  - multiply
  - __lshift__
  - binary_cross_entropy_with_logits
  - _embedding_bag
  - arange
  - linalg_qr
  - _embedding_bag_forward_only
  - _unsafe_view
  - remainder
  - cholesky_inverse
  - sub_
  - zero
  - fix
  - xlogy
  - __doc__
  - rsqrt_
  - cummin
  - __xor__
  - eye
  - _fused_adam
  - ceil
  - nll_loss2d_backward
  - replication_pad3d_backward
  - fill_
  - logaddexp2
  - _thnn_fused_lstm_cell_backward_impl
  - native_dropout
  - fft_ifft
  - expand
  - _cdist_backward
  - avg_pool3d_backward
  - round_
  - topk
  - max_unpool3d
  - xlogy_
  - reflection_pad2d_backward
  - addcdiv_
  - relu6
  - multilabel_margin_loss_forward
  - prelu
  - logaddexp
  - _cholesky_solve_helper
  - _foreach_addcdiv
  - arctan_
  - fft_irfftn
  - logical_or
  - bitwise_or_
  - hardtanh_backward
  - uniform
  - less_equal
  - _foreach_sub
  - linalg_cholesky_ex
  - hardswish
  - fft_fft2
  - sign
  - min
  - norm
  - asin
  - addcmul_
  - stft
  - col2im
  - special_chebyshev_polynomial_u
  - adaptive_max_pool3d
  - __ilshift__
  - _resize_output
  - gather
  - lu_unpack
  - native_batch_norm_backward
  - sigmoid
  - sqrt
  - new_empty_strided
  - _foreach_lerp_
  - mean
  - scatter_add_
  - _fft_c2r
  - rand_like
  - true_divide_
  - gcd_
  - multinomial
  - permute
  - index_put_
  - arcsinh_
  - log1p_
  - index_add
  - atan
  - glu_backward
  - searchsorted
  - fill
  - _unsafe_index
  - index_reduce_
  - replication_pad2d
  - expm1_
  - hardsigmoid
  - addmm
  - fft_fftn
  - fft_ifftshift
  - special_modified_bessel_k1
  - fft_rfft
  - ge
  - _adaptive_avg_pool2d_backward
  - argmin
  - linalg_lu_factor_ex
  - atanh_
  - addmv
  - _foreach_sqrt_
  - huber_loss_backward
  - softshrink
  - subtract_
  - bitwise_left_shift_
  - special_modified_bessel_i0
  - _nested_tensor_from_tensor_list
  - slice_backward
  - special_modified_bessel_i1
  - special_chebyshev_polynomial_t
  - conj_physical
  - _cdist_forward
  - margin_ranking_loss
  - max_pool3d_with_indices_backward
  - _foreach_reciprocal_
  - lcm
  - transpose_
  - cudnn_batch_norm_backward
  - reciprocal
  - copysign_
  - _foreach_pow
  - rad2deg
  - _foreach_sqrt
  - negative
  - replication_pad3d
  - atanh
  - _linalg_eigh
  - igamma_
  - special_i0e
  - linalg_ldl_factor_ex
  - special_ndtri
  - logit
  - diagonal_copy
  - triu
  - silu_
  - polygamma
  - square_
  - nextafter_
  - special_scaled_modified_bessel_k0
  - bitwise_not
  - var
  - mkldnn_rnn_layer_backward
  - upsample_bilinear2d
  - arctan2
  - clone
  - arcsin
  - new_ones
  - soft_margin_loss
  - nan_to_num
  - huber_loss
  - linalg_lu_solve
  - elu_backward
  - acosh
  - __ior__
  - _unsafe_index_put
  - __or__
  - _linalg_slogdet
  - arcsinh
  - select_scatter
  - less_
  - reflection_pad1d
  - istft
  - reflection_pad2d
  - diagonal_backward
  - special_entr
  - _softmax_backward_data
  - randn
  - celu
  - embedding
  - igammac_
  - new_zeros
  - native_layer_norm_backward
  - nonzero_static
  - diagonal_scatter
  - grid_sampler_2d
  - smooth_l1_loss_backward
  - _to_copy
  - fft_irfft2
  - relu_
  - fmod
  - log1p
  - i0
  - mse_loss_backward
  - copy
  - special_laguerre_polynomial_l
  - addmv_
  - quantized_gru
  - diag_embed
  - acos
  - fmod_
  - linalg_cross
  - mvlgamma_
  - _foreach_mul
  - cummax
  - less_equal_
  - ne
  - to
  - _pdist_forward
  - special_xlog1py
  - digamma
  - lgamma
  - mv
  - softplus
  - special_bessel_y1
  - pin_memory
  - logical_xor_
  - cat
  - grid_sampler_2d_backward
  - frac_
  - dropout
  - unsafe_chunk
  - masked_fill_
  - log
  - negative_
  - _scaled_dot_product_flash_attention
  - _amp_foreach_non_finite_check_and_unscale_
  - randn_like
  - add
  - roll
  - threshold
  - gcd
  - asinh
  - round
  - t_
  - unfold_backward
  - scatter_reduce
  - softplus_backward
  - bitwise_right_shift_
  - pdist
  - select_backward
  - relu
  - special_bessel_j1
  - asinh_
  - pow
  - fft_fftshift
  - clamp_max_
  - logical_xor
  - index_reduce
  - _foreach_add_
  - adaptive_max_pool2d
  - adaptive_max_pool3d_backward
  - tan
  - addbmm_
  - cosh_
  - __rshift__
  - _foreach_maximum
  - fft_ifftn
  - special_spherical_bessel_j0
  - split_with_sizes
  - divide_
  - neg_
  - nll_loss
  - _euclidean_dist
  - pairwise_distance
  - _adaptive_avg_pool3d
  - slice
  - absolute_
  - gelu_backward
  - arccos
  - sin
  - tril_
  - triu_
  - fft_irfft
  - flip
  - _foreach_sign
  - linalg_householder_product
  - _list_to_tensor
  - cumprod
  - randint_like
  - item
  - narrow_copy
  - tanh
  - linalg_vector_norm
  - _cudnn_rnn
  - _scaled_dot_product_efficient_attention
  - _reshape_alias
  - _linalg_det
  - constant_pad_nd 
  - _linalg_svd
  - sinh_
  - view
  - nll_loss_backward
  - greater
  - sqrt_
  - avg_pool3d
  - arctan
  - le_
  - _pdist_backward
  - _adaptive_avg_pool3d_backward
  - log_
  - logical_or_
  - mse_loss
  - rrelu_with_noise_backward
  - _native_batch_norm_legit
  - log10
  - scatter_
  - atan2_
  - greater_equal
  - index_select
  - __iand__
  - digamma_
  - eq
  - divide
  - cholesky_solve
  - _prelu_kernel
  - fft_ifft2
  - _foreach_neg_
  - alias
  - erfc_
  - not_equal
  - mul
  - gru
  - _dir
  - glu
  - clip
  - lt
  - rsqrt
  - avg_pool2d
  - conj_physical_
  - quantized_lstm
  - erfinv_
  - log10_
  - float_power_
  - _functional_assert_async
  - hardtanh
  - logical_and_
  - _resize_output_
  - clamp_min
  - _functional_sym_constrain_range_for_size
  - _addmm_activation
  - bucketize
  - _thnn_fused_lstm_cell
  - zeros
  - reflection_pad1d_backward
  - tan_
  - bitwise_not_
  - addmm_
  - absolute
  - as_strided
  - special_ndtr
  - gt_
  - baddbmm
  - special_log_ndtr
  - hardshrink
  - fft_hfft
  - hypot
  - native_layer_norm
  - _scaled_dot_product_flash_attention_backward
  - floor_divide
  - is_same_size
  - std
  - floor_divide_
  - clamp_min_
  - _foreach_sign_
  - std_mean
  - tanh_backward
  - _foreach_addcmul
  - binary_cross_entropy
  - threshold_backward
  - deg2rad_
  - masked_fill
  - linspace
  - reflection_pad3d
  - mish
  - index_copy
  - scatter_reduce_
  - _sparse_coo_tensor_with_dims_and_tensors
  - __loader__
  - _foreach_div_
  - cosh
  - _foreach_maximum_
  - neg
  - lift_fresh
  - logspace
  - selu_
  - leaky_relu_
  - matmul
  - _foreach_sub_
  - bitwise_or
  - unfold
  - fmin
  - convolution
  - argmax
  - maximum
  - reflection_pad3d_backward
  - fft_fft
  - mode
  - remainder_
  - _foreach_neg
  - erf_
  - special_zeta
  - index_add_
  - arccos_
  - lgamma_
  - unsqueeze_
  - gelu_
  - bmm
  - _add_relu
  - unfold_copy
  - not_equal_
  - subtract
  - true_divide
  - max_pool2d_with_indices_backward
  - _native_batch_norm_legit_no_training
  - replication_pad1d
  - name
  - greater_
  - log_normal
  - minimum
  - alpha_dropout
  - rnn_tanh
  - _functional_sym_constrain_range
  - sum
  - _prelu_kernel_backward
  - cumsum_
  - ne_
  - _linalg_solve_ex
  - native_batch_norm
  - igammac
  - hypot_
  - exp
  - leaky_relu
  - new_empty
  - cudnn_batch_norm
  - resize_as_
  - mm
  - triangular_solve
  - sign_
  - clamp_max
  - bitwise_right_shift
  - logical_and
  - special_i0
  - index_copy_
  - arctanh_
  - elu
  - index
  - isposinf
  - linalg_solve_triangular
  - logcumsumexp
  - arccosh
  - nan_to_num_
  - nll_loss_forward
  - convolution_backward
  - sub
  - special_scaled_modified_bessel_k1
  - mish_
  - diagonal
  - median
  - tril
  - sgn
  - native_group_norm_backward
  - stack
  - take
  - linalg_lu
  - log2
  - hardsigmoid_
  - erfc
  - max
  - native_dropout_backward
  - logit_
  - addr
  - clip_
  - _foreach_minimum_
  - atan_
  - repeat
  - cumprod_
  - bitwise_xor_
  - less
  - index_put
  - rrelu_with_noise
  - addbmm
  - special_bessel_y0
  - __and__
  - bernoulli_
  - uniform_
  - log2_
  - mul_
  - adaptive_max_pool2d_backward
  - _foreach_addcmul_
  - slice_scatter
  - isneginf
  - pow_
  - renorm_
  - arccosh_
  - replication_pad1d_backward
  - bitwise_and_
  - heaviside
  - renorm
  - special_modified_bessel_k0
  - le
  - is_pinned
  - __ixor__
  - leaky_relu_backward
  - count_nonzero
  - _fused_adam_
  - repeat_interleave
  - upsample_bicubic2d
  - rsub
  - arctan2_
  - frac
  - scalar_tensor
  - rrelu_with_noise_
  - rot90
  - erf
  - lerp_
  - expm1
  - full
  - sym_constrain_range_for_size
  - prod
  - normal_
  - elu_
  - special_airy_ai
  - nextafter
  - split
  - addcdiv
  - fft_rfft2
  - max_pool3d_with_indices
  - positive
  - transpose
  - mish_backward
  - clamp_
  - exp_
  - _foreach_reciprocal
  - linalg_matrix_exp
  - unsqueeze
  - upsample_nearest2d
  - sinc_
  - select
  - rad2deg_
  - trunc_
  - _make_dep_token
  - nanmedian
  - fft_hfftn
  - hardtanh_
  - sym_constrain_range
  - index_fill_
  - deg2rad
  - rand
  - sinc
  - pixel_shuffle
  - tril_indices
  - copy_
  - _int_mm
  - greater_equal_
  - celu_
  - div
  - igamma
  - exp2_
  - cos
  - log_normal_
  - _log_softmax_backward_data
  - im2col
  - reciprocal_
  - amax
  - broadcast_tensors
  - erfinv
  - __spec__
  - _fused_dropout
  - special_hermite_polynomial_he
  - aminmax
  - rnn_relu
  - meshgrid
  - var_mean
  - eq_
  - upsample_nearest3d
  - dot
  - zero_
  - floor_
  - fft_rfftn
  - special_erfcx
  - _foreach_div
  - fft_hfft2
  - _upsample_bilinear2d_aa
  - sort
  - log_sigmoid_backward
  - add_
  - copysign
  - bernoulli
  - special_bessel_j0
  - max_pool2d_with_indices
  - _scaled_dot_product_efficient_attention_backward
  - t
  - _softmax
  - arctanh
  - hinge_embedding_loss
  - hardswish_backward
  - fmax
  - multiply_
  - floor
  - lstm
  - i0_
  - cholesky
  - where
  - __irshift__
  - addcmul
  - embedding_dense_backward
  - sigmoid_
  - fix_
  - ormqr
  - exponential_
  - __name__
  - fft_ihfft2
  - logical_not
  - ones
  - sgn_
  - sinh
  - any
  - _foreach_addcdiv_
  - asin_
  - gt
  - lift
  - squeeze
  - grid_sampler_3d_backward
  - atan2
  - _fft_r2c
  - angle
  - silu_backward
  - acosh_
  - abs_
  - lerp
  - special_i1
  - complex
  - ceil_
  - _foreach_minimum
  - hardsigmoid_backward
  - upsample_nearest1d
  - mvlgamma
  - acos_
  - lt_
  - grid_sampler_3d
  - max_unpool2d
  - soft_margin_loss_backward
  - _fused_moving_avg_obs_fq_helper
  - isnan
  - nansum
  - baddbmm_
  - amin
  - isinf
  - bitwise_left_shift
  - unsafe_split_with_sizes
  - full_like
  - sin_
  - bitwise_xor
  - linalg_ldl_solve
  - cos_
  - div_
  - polar
  - randint
  - trunc
  - __package__
  - nll_loss2d_forward
  - diag
  - argsort
  - _foreach_mul_
  - square
  - detach
  - affine_grid_generator
  - _pin_memory
  - geometric_
  - unbind
  - randperm
  - upsample_nearest2d_backward
  - all
  - threshold_
  - unsafe_split
  - cauchy
  - normal
  - linalg_inv_ex
  - multi_margin_loss
  - cumsum
  - gelu
  - index_fill
  - scatter
  - mkldnn_rnn_layer
  - ge_
  - dist
  - _foreach_add
  - logit_backward
  - triu_indices
  - lcm_
  - empty_strided
  - replication_pad2d_backward
  - cauchy_
  - _log_softmax
  - vdot

distributed:
  - send
  - recv
  - broadcast
  - all_reduce
  - reduce
  - all_gather
  - gather
  - isend
  - irecv
  - scatter
  - reduce_scatter
  - _reduce_scatter_base
  - _all_gather_base
  - all_to_all_single
  - all_to_all
  - all_gather_into_tensor
  - reduce_scatter_tensor
  - batch_isend_irecv

npu_distributed:
  - isend
  - irecv

mindspeed:
  - dropout_add_layer_norm.npu_dropout_add_layer_norm
  - npu_rotary_position_embedding.npu_rotary_position_embedding
  - fusion_attention_v2.npu_fusion_attention
  - npu_mm_all_reduce_add_rms_norm.npu_mm_all_reduce_add_rms_norm
  - npu_mm_all_reduce_add_rms_norm_.npu_mm_all_reduce_add_rms_norm_
  - gmm.npu_gmm
  - gmm.npu_gmm_v2
  - npu_grouped_mat_mul_all_reduce.npu_grouped_mat_mul_all_reduce
  - ffn.npu_ffn
  - npu_moe_token_permute.npu_moe_token_permute
  - npu_moe_token_unpermute.npu_moe_token_unpermute
  - npu_ring_attention_update.npu_ring_attention_update
  - npu_matmul_add.npu_matmul_add_fp32
  - npu_groupmatmul_add.npu_groupmatmul_add_fp32
  - quant_gmm.npu_quant_gmm
  - quant_gmm.npu_quant_gmm_v2
  - npu_apply_fused_ema_adamw.npu_apply_fused_ema_adamw
