Skip to content

Logistics for ONNX Release 1.9

Ashwini Khade edited this page May 27, 2021 · 56 revisions

ONNX Release 1.9

Release Manager: Michal Karzynski
Target Release date: Week of 04/12/21

Timeline

03/25 - finish validation for opset14 in ORT (GRU and BatchNorm remaining. Rest all done)
03/31 - Cut ONNX release branch (Done)
03/31 to 04/02 - Cherry picks, release branch stabilization
04/02 - ONNX release candidate published in pypi test| validation in ORT | community validation | converters validation
04/12 - Ready for ONNX release

Planned cherry picks

Desc Status PR Notes
Add clarification for BatchNorm 14 Done https://github.com/onnx/onnx/pull/3402 During validation we realized the spec needs more clarification
Update shape inference for Non Zero Done https://github.com/onnx/onnx/pull/3364 Nice to add it to release. Will benefit runtimes
Update shape inference for Shape Done https://github.com/onnx/onnx/pull/3394 Nice to add it to release. Will benefit runtimes
Update to BatchNorm Op Done https://github.com/onnx/onnx/pull/3379 During validation in ORT we found some shortcomings in the spec and decided to revise it.
Proto utils bug fix Done https://github.com/onnx/onnx/pull/3373
Add content of Readme to package description Done https://github.com/onnx/onnx/pull/3376
Upgrade protobuf-compiler in Linux-CI Done https://github.com/onnx/onnx/pull/3378

Pending PRs

Desc Status PR
Proto utils bug fix Done https://github.com/onnx/onnx/pull/3373
Selective Schema Loading Done https://github.com/onnx/onnx/pull/3266
Fix Identity op test data Done https://github.com/onnx/onnx/pull/3372
ONNX Parser Done https://github.com/onnx/onnx/pull/3194
BatchNorm op update Done https://github.com/onnx/onnx/pull/3333
Reduce package size for Linux and Mac Done https://github.com/onnx/onnx/pull/3337
Hardswish op Done https://github.com/onnx/onnx/pull/3332
Deprecate python 3.5 Done https://github.com/onnx/onnx/pull/3353
ConvInteger test data fix Done https://github.com/onnx/onnx/pull/3340
Add python 3.9 Done https://github.com/onnx/onnx/pull/3352
External Data Helper Updates Done https://github.com/onnx/onnx/pull/3280
Extend dtype support for math operators Done https://github.com/onnx/onnx/pull/3334
Update Identity Op with Sequence type Done https://github.com/onnx/onnx/pull/3366

Work items

Desc Owner Status
Validate opset 14 with ORT Ashwini Khade Done (need to close on training tests for batchnorm. Everything else done)
Validate Pypi test packages Jacky Chen\Michal\Ewa
Cut release branch Michal\Ewa Done
Validate release packages
Create release summary Ewa Done

Summary - operator updates for opset 14

Op Name Description Validation status ONNX PR
Hardswish New function op Done https://github.com/microsoft/onnxruntime/pull/7177 https://github.com/onnx/onnx/pull/3332
Trilu New Op Done https://github.com/microsoft/onnxruntime/pull/7102 https://github.com/onnx/onnx/pull/3291
Reshape Added new attribute allowzero to support numpy like behavior Done https://github.com/microsoft/onnxruntime/pull/7177 https://github.com/onnx/onnx/pull/3113
BatchNorm Added training mode attr and a few other updates Inference validations done. Training not started https://github.com/onnx/onnx/pull/3333
GRU Added support for batchwise operations Done in a private branch https://github.com/onnx/onnx/pull/3217
LSTM Added support for batchwise operations Done in a private branch https://github.com/onnx/onnx/pull/3217
RNN Added support for batchwise operations Done in a private branch https://github.com/onnx/onnx/pull/3217
Identity Add support for sequence data type Done https://github.com/microsoft/onnxruntime/pull/7177 https://github.com/onnx/onnx/pull/3366
Add, Mul, Sub, Div Added data types (uint8, int8, int16, uint16) Done https://github.com/microsoft/onnxruntime/pull/7177 https://github.com/onnx/onnx/pull/3334
CumSum Added data types Done https://github.com/microsoft/onnxruntime/pull/7102 https://github.com/onnx/onnx/pull/3195
Relu Added data types Done https://github.com/microsoft/onnxruntime/pull/7102 https://github.com/onnx/onnx/pull/3141

TODO: Add manual verification into pipelines (Done)

The following testing can be added into release pipelines after producing the wheel to let release manager be aware.

  1. Test with the latest ORT with onnx/test/test_with_ort.py
  2. Test with different versions of dependencies (protobuf, numpy). Take protobuf as an example: test with 3.11.3 and the latest one.

ONNX release notes template

# Key Updates

## Opset version n [call out new ops vs updated ops and functions]

## API [any changes affecting ONNX APIs]

## Infrastructure [any architectural or infra related changes, including CIs, tests, etc]

## Bug fixes [list of notable bug fixes not covered in sections above]

# Notes [known issues/workarounds, installation/usage changes, dependency updates, etc]

# Contributors Thanks to these individuals for their contributions in this release: [list of contributors during release period]