Commit graph

5482 commits

Author SHA1 Message Date
Sunghoon
332c2ba4f4
[js/web] Integrate ONNX Runtime Web CI with BrowserStack (#8859)
* Integrate ONNX Runtime Web CI with BrowserStack

* Rename a pipeline from browserstack to multi-platform
2021-09-01 17:25:57 -07:00
liqun Fu
757e9e6df7
do not post cuda version mismatch warning if cannot find local cudart version (#8924)
Co-authored-by: liqun <liqun@OrtTrainingDev4.af05slrtruoetgaxwwjv5nsq5e.px.internal.cloudapp.net>
2021-09-01 17:11:54 -07:00
liqun Fu
f126a12699
decouple pytorch from onnxruntime training build (#8815) 2021-09-01 16:31:53 -07:00
Tianlei Wu
9467f511ac
Disable some ORT graph optimizers in offline transformers optimization tool (#8923)
walkaround "Unsupported operator FusedMatMul" during symbolic shape inference
2021-09-01 15:47:57 -07:00
Suffian Khan
225439193e
Optimize Concat and Split on CUDA to eliminate host-to-device copies when sizes are all the same (#8833)
* special case concat and split when sizes are equal

* add tests for 16 and 32 inputs with same dim

* add tests for 16/64 inputs on concat or 16/64 outputs on split

* try eliminate windows warning

* outter => outer
2021-09-01 15:25:45 -07:00
Scott McKay
858989293d
Reduce binary size of strided copy used by Concat (#8913)
* Change the strided copy to switch on data size not data type.
Move to header so we can reduce on the enabled types.
Setup type reduction for Concat now that it's using this implementation.
2021-09-02 08:19:20 +10:00
satyajandhyala
9e661b64ae
Fix cast propagation to not change casts from bool type. (#8925)
* Added new models to test bool->float and bool->float16 casts

* Fixed bool casts. Added new test cases.
2021-09-01 15:15:37 -07:00
Changming Sun
6299a60bf8
Nuget: splitting PDB files to a separated package (#8903) 2021-09-01 09:07:24 -07:00
Suffian Khan
00b0a9c127
Add hugging-face models loss curve and performance guards to ROCm CI pipeline. (#8915)
* test running hf bert-large

* try again

* try again

* include other models

* correct names

* disable deberta-v2-xxlarge

* avoid torch.distributed

* add compare json loss and perf for bert-large to test

* fix sed expression

* remove pytest

* add more models

* move unit tests u

* display samples/sec
2021-09-01 09:03:10 -07:00
Chi Lo
43d6951fa5
Add warning message for combined trt +cuda python pkg (#8906)
* Add warning message

* update message

* fix line too long

* fix flake8 issue
2021-09-01 07:28:01 -07:00
Hariharan Seshadri
acd9db7fad
Fix location planning for initializers used only in nested subgraphs (#8642) 2021-09-01 00:02:08 -07:00
Tang, Cheng
4dc0ddf606
support register external ep lib information (#8897)
* support register external ep lib inforation; make eager mode share the same ep pools with training workloads

* fix inference code

* fix build break

* fix the message
2021-08-31 20:51:22 -07:00
pengwa
3eb08d4dc7
custom autograd func memory (#8901)
* remove PythonOpGrad control dependency && avoid segement fault

* comment alignment

* fix bugs
2021-09-01 09:29:26 +08:00
Yulong Wang
feb747173e
[js/web] Update browser support table (#8900)
* [js/web] Update browser support table

update section 'Compatibility' for Edge browser

* update linux
2021-08-31 17:39:51 -07:00
Guoyu Wang
8404a2d011
Add NNAPI E2E test for Android java package (#8912)
* Add NNAPI E2E test for Android java package

* address cr comment
2021-08-31 17:34:33 -07:00
Changming Sun
a9a0d3f6fa Update min supported macOS version to 10.14 2021-08-31 16:09:48 -07:00
baijumeswani
70ca03d491
Correctly set the skip check flags for ORTModule (#8891) 2021-08-31 15:28:04 -07:00
Corentin Schreiber
69ab4670f7
CUDA UpsampleNearest performance improvement (#7592)
* Made rank a template parameter of _UpampleNearestKernel

* Added error checking for rank specified to UpampleImpl

* Added __restrict__ keyboard to input and output arrays in Upsample
2021-08-31 14:25:42 -07:00
Changming Sun
129722db37
Add android binary size monitor back (#8904) 2021-08-31 14:13:55 -07:00
ashbhandare
cd4b9f7753
Fix EP in transform (#8909) 2021-08-31 13:52:57 -07:00
George Nash
dc75a135c8
Add elementwise operators to DNNL execution provider (#8899)
The following ops have been added to the DNNL execution provider
Abs, Elu, Exp, Log, *Relu, Round, Sigmoid, Softplus, Sqrt, and Tanh

*Relu op was moved from its individual file to the elementwise operators

The error tolerance for the LogGrad unit test had to be decreased slightly
when using OneDNN.  Still investigating why a differet tolerance value is
needed.

DnnlSubgraph::AddKernels() member function was moved to the top of the file
since this is eddited every time a new operator is added to the the execution
provider this places the code at the top which mean less scrooling when
adding new kernels.

Signed-off-by: George Nash <george.nash@intel.com>
2021-08-31 12:20:49 -07:00
Zhang Lei
2e37fe3f68
Fuse HardSigmoid with conv. (#8674)
* Fuse HardSigmoid with conv.
Add transform test case and FusedConv testcase.

* Limit Conv/HardSigmoid fusion in CpuExecutionProvider.

* Fix typo for arm build.

* change format one place
2021-08-31 12:19:34 -07:00
Yulong Wang
206537936f
[js/web] enable proxy worker for wasm backend (#8862) 2021-08-31 10:23:42 -07:00
Olivia Jain
33c0b3e94b
Perf test fixes (#8863)
* fix anubis wheel upload and symbolic shape infer location

* Update linux-gpu-tensorrt-ci-perf-pipeline.yml for Azure Pipelines

* Update linux-gpu-tensorrt-ci-perf-pipeline.yml for Azure Pipelines

* Update linux-gpu-tensorrt-ci-perf-pipeline.yml for Azure Pipelines

* fix symbolic path

* use master and call mem_test after build

* Update linux-gpu-tensorrt-ci-perf-pipeline.yml

* use installed symbolic shape infer TODO: check upon error

* catch symbolic shape errors
2021-08-31 10:03:47 -07:00
Maajid khan
b7129305be
[OpenVINO-EP] UEP v3.1 Release with OpenVINO 2021.4 (#8892)
* Add command to skip tests

* Remove support for OV_2021.3_LTS and ov_2021.1

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Removed request_id parameter from all references

request_id parameter was being used with ov_2020.3
release. Starting from 2020.4 OV release, input_name
paramater is being used instead to get the
KernelContext_GetInput.

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Enabling CI Logs in the branch

* CI Commits to enable logs

* Enable CI Print

* Added Imagescaler op to the supported op's list

Fixes test_tiny_yolo_V2 opset 8 model to support
fully on OV-EP. This model is the older variation
of tiny_yolo_v2 model which has Imagescaler op.

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Added ops to fully support yolov3 model

-Added changes to support yolov3 opset 10 model
fully on CPU_FP32.

-This also increases the operator coverage for GPU
hardware. There by enabling yolov3 model on GPU
with fewer subgraphs.

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Enabling tiny_yolov3 model fully on CPU

->Enabled tiny_yolov3 model fully on CPU.

-> Also reduces the number of subgraphs
to infer this model on GPU

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Adding GatherND op support for CPU and GPU

->This enables yolov3_pytorch model to work
with fewer subgraphs on CPU and GPU Devices.

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Fixes Albert model for ISV customer

ConvTranspose op was getting rejected
due to a condition. Fixed it.

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Disabling this 4 cpp tests for openvino-ep

These unit tests are failing with special conditions
for conv_transpose op with output_shape attribute.
so disabling them for now.

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Docker file changes for 2021.4-v3.1

* Remvoing duplicate code

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* ReduceMax No dimension supported

* Fixes failing protobuf issue for docker

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Excluding openvinoep type for convtranpose test

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

* Disabled 2 Failing convtranspose tests with TensorRT EP

Signed-off-by: MaajidKhan <n.maajidkhan@gmail.com>

Co-authored-by: suryasidd <surya.siddharth.pemmaraju@intel.com>
Co-authored-by: Aravind Gunda <aravindx.gunda@intel.com>
Co-authored-by: sfatimar <sahar.fatima@intel/com>
2021-08-31 09:23:13 -07:00
Hariharan Seshadri
7659148d9f
Avoid round-trip copies for "pass through" subgraph inputs (#8702) 2021-08-30 21:30:01 -07:00
Tianlei Wu
42ba0c5931
output related packages (#8886) 2021-08-30 21:23:20 -07:00
Tianlei Wu
f6e7cd8050
remove existed dir for output external data (#8887) 2021-08-30 21:23:07 -07:00
Tianlei Wu
a171d13b19
Add a formula for layernorm parity test (#8888) 2021-08-30 21:22:45 -07:00
Changming Sun
c6d9426ef2
Add binary size reporting back (#8883) 2021-08-30 19:48:38 -07:00
Abhishek Jindal
868c8af9ac
Abjindal/eager mode pipeline (#8870)
* Adding pipeline file for eager mode

* adding the build eager mode flag

* adding torch wheel files for installation

* Changing pytorch version for change in wheel files

* updating requirements file path

* Removing Java and NodeJS from the build

* removing import torch for testing build of eager mode

* changing the build command

* import torch

* building eager mode separately

* removing Java tests

* python path issues

* changing python path location

* changing the build path file loc

* installing torch before build

* setting environment for building eager mode

* Copying the build file and getting rid of flags

* changing python path

* adding missing packages

* moving build eager mode code

* changing python path to python3

* adding amd_hipify

* adding logger file

* install torch before build

* change requirements file location

* install torch before build eager

* modifying eager mode build

* modifying build location

* adding new docker image

* handling gradle move issue

* Typo fix

* changing deps file

* adding java and nodejs

* changing repo name for docker image

* removing pybind

* building only eager mode

* changing the image name

* removing install wheel package

* build complete onnxruntime with eager mode

* building wheel

* enabling pybind

* adding build eager mode flag in unit tests

* removing build java nodejs

* adding build command

* removing java tests

* moving Debug tests before Release

* building Debug only case

* changing debug test code

* running the build eager mode with tests

* adding build dir

* adding build dir path

* changing build dir path

* changing build command for eager mode

* building eager mode and running tests simultaneously

* adding more flags to the pipeline

* chaning flag

* adding Debug and Release

* changing torch to nightly build

* changing torch version for nightly build

* chaning torch version

* move to Ubuntu image

* adding pool

* adding dockerfile for eager mode

* adding python deps file for eager

* modifying python deps file for eager

* changing deps file

* changing deps file statements

* changing python path

* REMOVING ECHO line

* going to original docker file

* changing docker file

* changing to eager requirements file

* changing python deps file

* changing paths

* changing cmake path

* changing build script

* changing python installation

* running debug mode only

* changing pipeline file

* test name

* test name

* test name2

* changing requirements file

* final flags for eager mode

* previous pipeline

* moving to ubuntu image and including some deps

* adding cmake path

* returning to manylinux image

* removing unncecessary files for pipeline
2021-08-30 18:24:39 -07:00
Changming Sun
6df4e293ff Remove unused code in tools/ci_build/github/azure-pipelines/nuget/templates/gpu.yml 2021-08-30 15:37:40 -07:00
Changming Sun
7cd46cb9c4 Fix a problem in Zip-Nuget-Java Packaging Pipeline 2021-08-30 14:51:36 -07:00
Edward Chen
b75c1081ca
[Objective-C] Enable static analysis, second try (#8875)
The previous attempt to enable static analysis (#8842) didn't actually run the static analysis checks.

- Run clang-tidy directly.
- Address static analysis warnings.
2021-08-30 10:43:45 -07:00
satyajandhyala
84f9271a8d
Enable registering external custom op schemas on Linux (#8889)
* Use manylinux instead of Ubuntu to run external custom ops build pipeline.
2021-08-30 10:13:47 -07:00
Changming Sun
03b680b940 Delete template.targets 2021-08-30 09:34:26 -07:00
Changming Sun
fa27c19342 Delete create_nuspect.py and template.nuspec 2021-08-30 09:34:26 -07:00
Changming Sun
1b5909dea8
Delete download_cmake.py (#8885) 2021-08-30 09:34:08 -07:00
liqun Fu
c8dd0bf37e
to publish stable wheel to ort channel (#8873)
Co-authored-by: liqun <liqun@OrtTrainingDev4.af05slrtruoetgaxwwjv5nsq5e.px.internal.cloudapp.net>
2021-08-30 09:33:01 -07:00
pengwa
36fa0de8b7
fix regression and enable custom autograd func tests in CIs (#8868)
* fix regression and enable tests in CIs

* Update orttraining/orttraining/python/training/ortmodule/_custom_autograd_function.py

Co-authored-by: Wei-Sheng Chin <wschin@outlook.com>

* fix

Co-authored-by: Wei-Sheng Chin <wschin@outlook.com>
2021-08-30 09:34:18 +08:00
Sherlock
6e20eb7eb3
Stop gradient for Multinomial, RandomNormalLike, RandomUniformLike and EyeLike (#8836) 2021-08-28 16:21:34 -07:00
baijumeswani
df9438192a
Re-introduce saving of optimized onnx model (#8860)
* Re-introduce saving of optimized onnx model
2021-08-28 14:27:25 -07:00
satyajandhyala
31926176ac
Support external custom operator schemas on Ubuntu (#8807)
* Expose symbols in onnx and protobuf namespaces in python when building with --enable_external_custom_op_schemas

* Add external onnx and protobuf files to wheel

* Added an example to demonstrate external custom ops use-case

* Added a Linux build pipeline to test external custom ops
2021-08-28 11:05:21 -07:00
Zuwei Zhao
89e8bff121
Enable selecting custom ops in onnxruntime-extensions. (#8826)
* Enable selecting custom ops in onnxruntime-extensions.

* Move cmake_helper.py.

* Remove over-indented spaces.

* Add doc.

* Remove onnxruntime-extensions from git submodules, and user should pass path of onnxruntime-extensions for build.

* Modify doc.

* Remove argument --enable_onnxruntime_extensions and use --onnxruntime_extensions_path.

* Fix build error.

* Fix build error.

* Use onnxruntime_extensions_path.

* support both submodule and external source folders

* refinement

* Update cgmanifest.json

* Support building onnxruntime-extensions from either git submodule or pre-pulled path.

* Update doc.

* more standard name

* update docs

* add the copyright header

Co-authored-by: Zuwei Zhao <zuzhao@microsoft.com>
Co-authored-by: Wenbing Li <wenbingl@outlook.com>
Co-authored-by: Wenbing Li <10278425+wenbingl@users.noreply.github.com>
2021-08-27 21:45:52 -07:00
Tianlei Wu
6ea9324f82
fix EmbedLayerNormalization shape inference (#8876) 2021-08-27 19:18:45 -07:00
Tang, Cheng
ae7f2d824d
Share the execution provider instance for training (#8719)
* seperate the training python module; share the execution proivder instance

* fix build break

* fix cuda test crash; reorg the python module code base

* se correct env

* use provider customized hash func

* fixbuild break

* fix rocm break

* use const ref in argument

* rename the file

* move hash func to trainiing module
2021-08-27 16:23:35 -07:00
Guoyu Wang
6a1939252f
Fix Android java API failure (#8865)
* Fix Android Package break

* Without java fix -- pipeline should fail

* With java fix, should pass now

* address CR comments
2021-08-27 15:58:56 -07:00
Tianlei Wu
615df42b46
Add force_fp16_initializers in convert_float_to_float16 (#8871) 2021-08-27 14:35:38 -07:00
Scott McKay
0034ad72e6
Minimize changes to fix missing symbols used from C# (#8867)
* Revert "Cleanup C# bindings to add EP (#8810)"

This reverts commit b21ea00020.

* Add back in a minimal set of changes.
Provide stubs in for a limited set of things
  - things called from C# using a static lib of ORT built for mac/ios
  - things in OrtApis that are not included in the build by default
  - things in OrtApis that are excluded in a minimal build

* Cleanup order or EPs in test

* Fix unused function in ROCM build
2021-08-28 07:10:14 +10:00
Dmitri Smirnov
f3083f4bf3
Support of sparse initializers with smaller indices data type (#8834)
Support of sparse initializers with smaller indices data type to save space.
Make the script more efficient by selecting indices data type and checking resulting sparse bytes
Exclude new code from SPARSE_TENSORS
2021-08-27 14:02:48 -07:00