Improve export
Miscellaneous fixes and changes to robustify the exports, which will fix aidge_export_cpp#32 (closed) and aidge_onnx#64 (closed).
-
Fixed I/O order handling in scheduler_export()
; -
Handle data format: remove hugly transpose fix in Producer export; -
Handle data format: remove format trick in FC kernel; -
Support both Default/NCHW and NHWC format in two FC kernels; -
Added a recipe to automatically transpose the weights during export if possible.
-
-
Make data format a "weak" property of tensors: -
By default, data format change is ignored if the tensor dimension does not match the format; -
When tensors are resized, if the tensor new dimension does not match the format, it is reset to Default
.
-
-
Improved display of GraphView::save()
to display type and format even when the tensor is undefined. -
Handle optional outputs: -
Allow to remove graph outputs with GraphView::setOrderedOutputs()
; -
Take it into account during export; -
Make adaptToBackend()
comply with that; -
Loaded ONNX graph outputs are conformant to ONNX outputs (no extra outputs are added anymore); -
Recipes ExpandMetaOp(s)
andAdaptToBackend
do not introduce new outputs anymore.
-
-
Handle multi-precision: - Memory manager now handles bytes instead of words;
- Memory is allocated in bytes;
- Added support for memory alignment, with a default memory alignment of 16 bytes (adapted up to 64-bits systems);
- Export memory array is now always of type
unsigned char
.
-
Enforce loaded ONNX model data format to NCHW; -
Added NHWC format support in forwardDims()
forPad
operator; -
Add result values checks in lenet.py
; -
AdaptToBackend
should not rename existing nodes (@axelfarr); -
Fixed createUniqueName()
should never return an empty name; -
Fixed #279 (closed) with an assert.
Edited by Olivier BICHLER