onnxruntime/tools/ci_build/github/azure-pipelines
liqun Fu cd7112f800
Integration with ONNX 1.16.0 (#19745)
### Description
update with ONNX 1.16.0 branch according to
https://github.com/microsoft/onnxruntime/blob/main/docs/How_To_Update_ONNX_Dev_Notes.md

ONNX 1.16.0 release notes:
https://github.com/onnx/onnx/releases/tag/v1.16.0

#### Updated ops for CPU EP:
- DequantizeLinear(21)
  - Added int16 and uint16 support + various optimizer tests
  - Missing int4 and uint4 support
  - Missing block dequantization support
- QuantizeLinear(21)
  - Added int16 and uint16 support + various optimizer tests
  - Missing int4 and uint4 support
  - Missing block quantization support
- Cast(21)
  - Missing int4 and uint4 support
- CastLike(21)
  - Missing int4 and uint4 support
- ConstantOfShape(21)
  - Missing int4 and uint4 support
- Identity(21)
  - Missing int4 and uint4 support
- If(21)
  - Missing int4 and uint4 support
- Loop(21)
  - Missing int4 and uint4 support
- Reshape(21)
  - Missing int4 and uint4 support
- Scan(21)
  - Missing int4 and uint4 support
- Shape(21)
  - Missing int4 and uint4 support
- Size(21)
  - Missing int4 and uint4 support
- Flatten(21)
- Missing float8e4m3fnuz, float8e5m2, float8e5m2fnuz, int4, and uint4
support
- Pad(21)
- Missing float8e4m3fnuz, float8e5m2, float8e5m2fnuz, int4, and uint4
support
- Squeeze(21)
- Missing float8e4m3fnuz, float8e5m2, float8e5m2fnuz, int4, and uint4
support
- Transpose(21)
- Missing float8e4m3fnuz, float8e5m2, float8e5m2fnuz, int4, and uint4
support
- Unsqueeze(21)
- Missing float8e4m3fnuz, float8e5m2, float8e5m2fnuz, int4, and uint4
support

#### Unimplemented opset 21 features/ops
- int4 and uint4 data type
- QLinearMatMul(21)
- GroupNormalization(21)
- ai.onnx.ml.TreeEnsemble(5)

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

### Disabled tests
#### ORT Training

orttraining/orttraining/test/python/orttraining_test_ort_apis_py_bindings.py
- test_ort_custom_ops: Potential shape inference bug for custom ops

#### Python quantization unit tests
test/onnx/python/quantization (shape inference bug)
- test_op_conv_transpose.py: test_quantize_conv_transpose_u8u8_fp16
- test_op_conv_transpose.py: test_quantize_conv_transpose_s8s8_fp16
- test_op_gemm.py: test_quantize_qop_gemm_s8s8
- test_op_gemm.py: test_quantize_qop_gemm_e4m3fn_same
 - test_op_gemm.py: test_quantize_qop_gemm_e4m3fn_p3
- test_op_matmul.py: test_quantize_matmul_u8u8_f16
- test_op_matmul.py: test_quantize_matmul_s8s8_f16
- test_op_matmul.py: test_quantize_matmul_s8s8_f16_entropy
- test_op_matmul.py: test_quantize_matmul_s8s8_f16_percentile
- test_op_matmul.py: test_quantize_matmul_s8s8_f16_distribution
- test_op_relu.py: test_quantize_qop_relu_s8s8

#### ONNX tests
- test_maxpool_2d_ceil_output_size_reduce_by_one: ONNX 1.16.0 fixed a
maxpool output size bug and added this test. Enable this test when [ORT
PR](https://github.com/microsoft/onnxruntime/pull/18377) is merged.
Refer to original [ONNX PR](https://github.com/onnx/onnx/pull/5741).
- test_ai_onnx_ml_tree_ensemble_set_membership_cpu: new unimplemented op
ai.onnx.ml.TreeEnsemble
- test_ai_onnx_ml_tree_ensemble_single_tree_cpu: same
- test_ai_onnx_ml_tree_ensemble_set_membership_cuda: same
- test_ai_onnx_ml_tree_ensemble_single_tree_cuda: same
- test_cast_INT4_to_FLOAT_cpu: ORT Cast(21) impl doesn't support int4
yet
- test_cast_INT4_to_INT8_cpu: same
- test_cast_UINT4_to_FLOAT_cpu: same
- test_cast_UINT4_to_UINT8_cpu: same
- test_cast_INT4_to_FLOAT_cuda
- test_cast_INT4_to_INT8_cuda
- test_cast_UINT4_to_FLOAT_cuda
- test_cast_UINT4_to_UINT8_cuda
- test_constantofshape_float_ones_cuda: ConstantOfShape(21) not
implemented for cuda
- test_constantofshape_int_shape_zero_cuda: same
- test_constantofshape_int_zeros_cuda: same
- test_flatten_axis0_cuda: Flatten(21) not implemented for cuda
- test_flatten_axis1_cuda: same
- test_flatten_axis2_cuda: same
- test_flatten_axis3_cuda: same
- test_flatten_default_axis_cuda: same
- test_flatten_negative_axis1_cuda: same
- test_flatten_negative_axis2_cuda: same
- test_flatten_negative_axis3_cuda: same
- test_flatten_negative_axis4_cuda: same
- test_qlinearmatmul_2D_int8_float16_cpu: QLinearMatMul(21) for onnx not
implemented in ORT yet
- test_qlinearmatmul_2D_int8_float32_cpu: same
- test_qlinearmatmul_2D_uint8_float16_cpu: same
- test_qlinearmatmul_2D_uint8_float32_cpu: same
- test_qlinearmatmul_3D_int8_float16_cpu: same
- test_qlinearmatmul_3D_int8_float32_cpu: same
- test_qlinearmatmul_3D_uint8_float16_cpu: same
- test_qlinearmatmul_3D_uint8_float32_cpu: same
- test_qlinearmatmul_2D_int8_float16_cuda: same
- test_qlinearmatmul_2D_int8_float32_cuda: same
- test_qlinearmatmul_2D_uint8_float16_cuda: same
- test_qlinearmatmul_2D_uint8_float32_cuda: same
- test_qlinearmatmul_3D_int8_float16_cuda: same
- test_qlinearmatmul_3D_int8_float32_cuda: same
- test_qlinearmatmul_3D_uint8_float16_cuda: same
- test_qlinearmatmul_3D_uint8_float32_cuda: same
- test_size_cuda: Size(21) not implemented for cuda
- test_size_example_cuda: same
- test_dequantizelinear_blocked: Missing implementation for block
dequant for DequantizeLinear(21)
- test_quantizelinear_blocked_asymmetric: Missing implementation for
block quant for QuantizeLinear(21)
- test_quantizelinear_blocked_symmetric: Missing implementation for
block quant for QuantizeLinear(21)

---------

Signed-off-by: liqunfu <liqun.fu@microsoft.com>
Signed-off-by: Ganesan Ramalingam <grama@microsoft.com>
Co-authored-by: Ganesan Ramalingam <grama@microsoft.com>
Co-authored-by: George Wu <jywu@microsoft.com>
Co-authored-by: adrianlizarraga <adlizarraga@microsoft.com>
2024-04-12 09:46:49 -07:00
..
nodejs/templates Fix training and macos ci pipelines (#20034) 2024-03-26 12:20:11 -07:00
nuget/templates Fix training and macos ci pipelines (#20034) 2024-03-26 12:20:11 -07:00
stages enable lto in Python-CUDA-Packaging Pipline (#20164) 2024-04-01 15:42:28 +08:00
templates Integration with ONNX 1.16.0 (#19745) 2024-04-12 09:46:49 -07:00
triggers
android-arm64-v8a-QNN-crosscompile-ci-pipeline.yml
android-x86_64-crosscompile-ci-pipeline.yml
bigmodels-ci-pipeline.yml Remove --extra-index-url (#19885) 2024-03-13 09:45:22 -07:00
binary-size-checks-pipeline.yml
build-perf-test-binaries-pipeline.yml
c-api-noopenmp-packaging-pipelines.yml Split more windows GPU workflow into 2 stages, building and testing, to make them more stable (#20080) 2024-03-28 12:55:44 +08:00
clean-build-docker-image-cache-pipeline.yml
cuda-packaging-pipeline.yml Split more windows GPU workflow into 2 stages, building and testing, to make them more stable (#20080) 2024-03-28 12:55:44 +08:00
linux-ci-pipeline.yml Check whether required tests are executed. (#19884) 2024-03-13 09:59:57 -07:00
linux-cpu-aten-pipeline.yml
linux-cpu-eager-pipeline.yml
linux-cpu-minimal-build-ci-pipeline.yml
linux-dnnl-ci-pipeline.yml
linux-gpu-ci-pipeline.yml Enable CUDA EP unit testing on Windows (#20039) 2024-03-27 13:32:36 -07:00
linux-gpu-tensorrt-ci-pipeline.yml
linux-gpu-tensorrt-daily-perf-pipeline.yml [EP Perf] Customize onnx-tensorrt commit id when init CI tasks (#20175) 2024-04-10 09:46:05 -07:00
linux-migraphx-ci-pipeline.yml [ROCm] Remove MPI dependency and collectives to use NCCL (#19830) 2024-03-19 17:35:18 -07:00
linux-multi-gpu-tensorrt-ci-pipeline.yml
linux-openvino-ci-pipeline.yml Ort openvino npu 1.17 master (#19966) 2024-03-21 18:44:00 -07:00
linux-qnn-ci-pipeline.yml
mac-ci-pipeline.yml
mac-coreml-ci-pipeline.yml Switch a portion of CI/packaging jobs to MacOS12 (#19908) 2024-03-19 14:54:58 -07:00
mac-ios-ci-pipeline.yml Switch a portion of CI/packaging jobs to MacOS12 (#19908) 2024-03-19 14:54:58 -07:00
mac-ios-packaging-pipeline.yml Switch a portion of CI/packaging jobs to MacOS12 (#19908) 2024-03-19 14:54:58 -07:00
mac-objc-static-analysis-ci-pipeline.yml Fix training and macos ci pipelines (#20034) 2024-03-26 12:20:11 -07:00
mac-react-native-ci-pipeline.yml
npm-packaging-pipeline.yml
nuget-cuda-publishing-pipeline.yml
orttraining-linux-ci-pipeline.yml
orttraining-linux-gpu-ci-pipeline.yml
orttraining-linux-gpu-ortmodule-distributed-test-ci-pipeline.yml
orttraining-linux-nightly-ortmodule-test-pipeline.yml
orttraining-mac-ci-pipeline.yml
orttraining-pai-ci-pipeline.yml
orttraining-py-packaging-pipeline-cpu.yml [Fix] Error Python Packaging Pipeline (Training CPU) (#19992) 2024-03-20 09:02:50 -07:00
orttraining-py-packaging-pipeline-cuda.yml Reuse T4 for Cuda12.2 training packaging pipeline. (#20244) 2024-04-10 09:21:40 +08:00
orttraining-py-packaging-pipeline-cuda12.yml Set parallel count to avoid OOM in training GPU packaging pipeline (#20255) 2024-04-10 14:05:53 +08:00
orttraining-py-packaging-pipeline-rocm.yml
post-merge-jobs.yml Fix training and macos ci pipelines (#20034) 2024-03-26 12:20:11 -07:00
publish-nuget.yml
py-cuda-package-test-pipeline.yml
py-cuda-packaging-pipeline.yml Refactor Python CUDA packaging pipeline to fix random hangs in building (#19989) 2024-03-22 09:16:00 +08:00
py-cuda-publishing-pipeline.yml
py-package-build-pipeline.yml
py-package-test-pipeline.yml Fix training and macos ci pipelines (#20034) 2024-03-26 12:20:11 -07:00
py-packaging-pipeline.yml
qnn-ep-nuget-packaging-pipeline.yml
web-ci-pipeline.yml
win-ci-fuzz-testing.yml
win-ci-pipeline.yml Install ONNX by buildling source code in Windows DML stage (#20079) 2024-03-27 12:29:34 -07:00
win-gpu-ci-pipeline.yml Enable CUDA EP unit testing on Windows (#20039) 2024-03-27 13:32:36 -07:00
win-gpu-reduce-op-ci-pipeline.yml
win-gpu-tensorrt-ci-pipeline.yml
win-qnn-arm64-ci-pipeline.yml
win-qnn-ci-pipeline.yml