Skip to content

[upd] operator for benchmark

Maxence Naud requested to merge feat_benchmark into dev

Context

Many fixes and updates for benchmarked operators (see aidge_benchmark#7)

⚠️ changes made to DataFormat break the export _mem_info file because of enum string call that changes from 'nchw' to 'dformat.nchw'. So export_cpp branch should also be merged

Main changes

  • [fix] clone of OperatorTensor by copying dims and MetaOperator forward by forwarding dims
  • [add] Scatter and Softplus Python binding
    • [add] Softplus operator generator
  • add conversion numpy type / aidge type functions to pybind_Tensor
  • [upd] ConstantOfShape add constructor from value and fix some checks
  • [add] default value for Pad 'axes' attribute
  • [fix] operator Python binding name typos
  • Make some formating and add an in_bound() function utils used in LayerNorm
  • [upd] make enum to Python standard (uppercase)
  • [upd] RandomNormalLike forwardDtype propagation to follow ONNX standard
  • [fix] scalar dimension propagation in Add/Sum/Max

Enum

  • [upd] change enum for native_enum in Python bindings
  • allow to use string instead of enum in some operator constructor
  • [add] EnumString function to get enum from string
  • [upd] Pybind11 version to 3.0.1 to use native_enum and better support of unique_ptr
  • [upd] some operator enum
    • ScatterReduction -> ScatterOp::Reduction
    • BitshiftDirection -> Bitshift_Op::Direction
    • PadMode -> PaddingMode
    • move some operator attributes enum inside the operator
    • change RoundingMode string to snake_case
Edited by Maxence Naud

Merge request reports

Loading