Files
2026-07-13 12:40:42 +08:00

426 lines
12 KiB
YAML
Executable File

# The apis in this file are unstandardized that may caused by a variety of reasons,
# we are trying to fix these apis and will move standardized apis into ops.yaml.
- op : add
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : add
inplace : (x -> out)
backward : add_grad
traits : pir::BinaryElementWiseTrait
- op : add_n
args : (Tensor[] inputs)
output : Tensor
invoke : add_n_impl(inputs)
backward : add_n_grad
- op : arange
args : (Tensor start, Tensor end, Tensor step, DataType dtype, Place place={})
output : Tensor(out)
infer_meta :
func : ArangeTensorInferMeta
param : [start, end, step, dtype]
kernel :
func : arange_tensor
param : [start, end, step]
data_type : dtype
backend : place
traits : paddle::dialect::ForwardOnlyTrait
- op : assign
args : (Tensor x)
output : Tensor
infer_meta :
func : UnchangedInferMeta
spmd_rule : AssignInferSpmd
kernel :
func : assign
backward : assign_grad
inplace : (x -> out)
- op : batch_norm
args : (Tensor x, Tensor mean, Tensor variance, Tensor scale, Tensor bias, bool is_test, float momentum, float epsilon, str data_format, bool use_global_stats, bool trainable_statistics)
output : Tensor(out), Tensor(mean_out), Tensor(variance_out), Tensor(saved_mean), Tensor(saved_variance), Tensor(reserve_space)
infer_meta:
func : BatchNormInferMeta
spmd_rule : BatchNormInferSpmd
kernel :
func : batch_norm
data_type : x
view : (mean -> mean_out), (variance -> variance_out)
backward : batch_norm_grad
optional : scale, bias, reserve_space
- op : c_embedding
args : (Tensor weight, Tensor x, int64_t start_index=0, int64_t vocab_size=-1)
output : Tensor(out)
infer_meta :
func : CEmbeddingInferMeta
param : [weight, x, start_index]
kernel :
func : c_embedding
param : [weight, x, start_index, vocab_size]
data_type : weight
backward : c_embedding_grad
- op : distribute_fpn_proposals
args : (Tensor fpn_rois, Tensor rois_num, int min_level, int max_level, int refer_level, int refer_scale, bool pixel_offset)
output : Tensor[](multi_fpn_rois){max_level - min_level + 1}, Tensor[](multi_level_rois_num){max_level - min_level + 1}, Tensor(restore_index)
infer_meta :
func : DistributeFpnProposalsInferMeta
kernel :
func : distribute_fpn_proposals
data_type : fpn_rois
optional : rois_num
traits : paddle::dialect::ForwardOnlyTrait
- op : div_scale
args : (Tensor x, Scalar scale=1.0)
output : Tensor(out)
infer_meta :
func : UnchangedInferMeta
param : [x]
spmd_rule : DivScaleInferSpmd
kernel :
func : div_scale {dense -> dense}
data_type : x
backward : div_scale_grad
- op : divide
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : divide
inplace: (x -> out)
backward : divide_grad
traits : pir::BinaryElementWiseTrait
- op : einsum
args : (Tensor[] x, str equation)
output : Tensor(out), Tensor[](inner_cache){x.size()}, Tensor[](xshape){x.size()}
infer_meta :
func : EinsumRawInferMeta
param : [x, equation]
spmd_rule : EinsumInferSpmd
kernel :
func : einsum
backward : einsum_grad
- op : elementwise_pow
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
spmd_rule: ElementwiseBinaryInferSpmd
kernel :
func : elementwise_pow
backward : elementwise_pow_grad
traits : pir::BinaryElementWiseTrait
- op : embedding
args : (Tensor x, Tensor weight, int64_t padding_idx=-1, bool sparse=false)
output : Tensor
infer_meta :
func : EmbeddingInferMeta
param : [x, weight, padding_idx]
spmd_rule: EmbeddingInferSpmdUnsupportedVocabParallel
kernel :
func : embedding {dense, dense -> dense}
sparse_weight_embedding {dense, selected_rows -> dense}
param : [x, weight, padding_idx]
data_type : weight
backward : embedding_grad
- op : embedding_grad_dense
args : (Tensor x, Tensor weight, Tensor out_grad, int64_t padding_idx=-1, bool sparse=false)
output : Tensor(weight_grad)
infer_meta :
func : UnchangedInferMeta
param : [weight]
kernel :
func : embedding_grad
data_type : weight
traits : paddle::dialect::ForwardOnlyTrait
- op : equal
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : CompareInferMeta
spmd_rule: ElementwiseBinaryInferSpmd
kernel :
func : equal
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait
- op : floor_divide
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
kernel :
func : floor_divide
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait, pir::BinaryElementWiseTrait
- op : fused_adam_
args : (Tensor[] params, Tensor[] grads, Tensor learning_rate, Tensor[] moments1, Tensor[] moments2, Tensor[] moments2_max, Tensor[] beta1_pows, Tensor[] beta2_pows, Tensor[] master_params, Tensor skip_update, Scalar beta1, Scalar beta2, Scalar epsilon, int chunk_size, float weight_decay, bool use_adamw, bool multi_precision, bool use_global_beta_pow, bool amsgrad = false)
output : Tensor[](params_out){params.size()}, Tensor[](moments1_out){params.size()}, Tensor[](moments2_out){params.size()}, Tensor[](moments2_max_out){params.size()}, Tensor[](beta1_pows_out){params.size()}, Tensor[](beta2_pows_out){params.size()}, Tensor[](master_params_out){params.size()}
infer_meta :
func : FusedAdamInferMeta
kernel :
func : fused_adam
data_type : params
optional : moments2_max, skip_update, master_params, moments2_max_out
inplace : (params -> params_out), (moments1 -> moments1_out), (moments2 -> moments2_out), (moments2_max -> moments2_max_out), (beta1_pows -> beta1_pows_out), (beta2_pows -> beta2_pows_out), (master_params -> master_params_out)
traits : paddle::dialect::ForwardOnlyTrait
- op : fused_gemm_epilogue
args : (Tensor x, Tensor y, Tensor bias, bool trans_x, bool trans_y, str activation)
output : Tensor(out), Tensor(reserve_space)
invoke : fused_gemm_epilogue_impl(x, y, bias, trans_x, trans_y, activation)
backward: fused_gemm_epilogue_grad
optional: reserve_space
- op : greater_equal
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : CompareInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : greater_equal
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait
- op : greater_than
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : CompareInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : greater_than
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait
- op : hardswish
args : (Tensor x)
output : Tensor(out)
infer_meta :
func : UnchangedInferMeta
param : [x]
kernel :
func : hardswish
inplace : (x -> out)
backward : hardswish_grad
- op : less_equal
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : CompareInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : less_equal
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait
- op : less_than
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : CompareInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : less_than
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait
- op : matmul
args : (Tensor x, Tensor y, bool transpose_x = false, bool transpose_y = false)
output : Tensor
infer_meta :
func : MatmulInferMeta
spmd_rule : MatmulInferSpmd
kernel :
func : matmul
backward : matmul_grad
- op : maximum
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : maximum
backward : maximum_grad
traits : pir::BinaryElementWiseTrait
- op : min
args : (Tensor x, IntArray axis={}, bool keepdim=false)
output : Tensor(out)
infer_meta :
func : StrictReduceIntArrayAxisInferMeta
spmd_rule : ReductionMinInferSpmdDynamic
kernel :
func : min
backward : min_grad
- op : minimum
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
kernel :
func : minimum
backward : minimum_grad
traits : pir::BinaryElementWiseTrait
- op : mm_out_dtype
args : (Tensor x, Tensor y, DataType out_dtype)
output : Tensor(out)
infer_meta :
func : MmOutDtypeInferMeta
kernel :
func : mm_out_dtype
data_type : x
traits : paddle::dialect::ForwardOnlyTrait
- op : multiply
args : (Tensor x, Tensor y)
output : Tensor
infer_meta :
func : ElementwiseInferMeta
spmd_rule : ElementwiseBinaryWithPartialInferSpmd
kernel :
func : multiply {dense, dense -> dense},
multiply_sr {selected_rows, dense -> selected_rows}
inplace : (x -> out)
backward : multiply_grad
traits : pir::BinaryElementWiseTrait
- op : not_equal
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : CompareInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : not_equal
inplace: (x -> out)
traits : paddle::dialect::ForwardOnlyTrait
- op : range_v2
args : (Tensor start, Tensor end, Tensor step, DataType dtype, Place place={})
output : Tensor(out)
infer_meta :
func : RangeTensorInferMeta
param : [start, end, step, dtype]
kernel :
func : range_tensor
param : [start, end, step]
data_type : dtype
backend : place
traits : paddle::dialect::ForwardOnlyTrait
- op : remainder
args : (Tensor x, Tensor y)
output : Tensor (out)
infer_meta :
func : ElementwiseInferMeta
param: [x, y]
kernel :
func : remainder
inplace : (x -> out)
backward: remainder_grad
traits : pir::BinaryElementWiseTrait
- op : set_value
args : (Tensor x, IntArray starts, IntArray ends, IntArray steps, int64_t[] axes, int64_t[] decrease_axes, int64_t[] none_axes, int64_t[] shape, Scalar[] values)
output : Tensor(out)
inplace: (x -> out)
infer_meta :
func : SetValueInferMeta
param : [x]
kernel :
func : set_value
backward: set_value_grad
- op : softmax
args : (Tensor x, int axis)
output : Tensor(out)
infer_meta :
func : SoftmaxInferMeta
spmd_rule : SoftmaxInferSpmd
kernel :
func : softmax
inplace : (x -> out)
backward : softmax_grad
- op : subtract
args : (Tensor x, Tensor y)
output : Tensor(out)
infer_meta :
func : ElementwiseInferMeta
spmd_rule : ElementwiseBinaryInferSpmd
kernel :
func : subtract
inplace : (x -> out)
backward : subtract_grad
traits : pir::BinaryElementWiseTrait
- op : sync_comm_stream
args : (Tensor[] x, int ring_id = 0)
output : Tensor[](out){x.size()}
infer_meta :
func : UnchangedVectorInferMeta
param : [x]
kernel :
func : sync_comm_stream
data_type : DataType::FLOAT32
traits : paddle::dialect::ForwardOnlyTrait
- op : tensor_unfold
args : (Tensor input, int64_t axis, int64_t size, int64_t step)
output : Tensor
infer_meta :
func : StridedUnChangedInferMeta
param : [input]
kernel :
func : tensor_unfold
backward : tensor_unfold_grad
no_need_buffer : input
- op : tile
args : (Tensor x, IntArray repeat_times = {})
output : Tensor(out)
infer_meta :
func : TileInferMeta
spmd_rule : TileInferSpmdDynamic
kernel :
func : tile
backward : tile_grad
# The `axis` argument of Python API paddle.unique is not vector
- op : unique
args : (Tensor x, bool return_index, bool return_inverse, bool return_counts, int[] axis, DataType dtype=DataType::INT64)
output : Tensor(out), Tensor(indices), Tensor(inverse), Tensor(counts)
infer_meta :
func : UniqueInferMeta
spmd_rule : UniqueInferSpmd
kernel :
func : unique
data_type : x
optional : indices, inverse, counts
traits : paddle::dialect::ForwardOnlyTrait