Commit graph

7863 commits

Author SHA1 Message Date
Sherlock
8e200e13fe
Rewrite ORTModule background task coordination (#6700)
* Introduce OrtTasks to replace EventPool

* return run_id to frontend

* pass run_id to backward

* OrtTasks support multiple bg_events

* make message_queue a member of orttask

* Replace MessageQueue with std::promise

* Move status_promise into Task

* Move terminate flag into Task

* Reenable previously disabled UTs

* Add unit tests

* Replace condition variables with std::promise

* Move to CreateBackgroundTask in the main thread

* return status and output in forward_future

* use throw for terminating background thread

* cleanup tasks at destructor

* reenable test_mixed_nnmodule_ortmodules_training

* add mutex for ORTTasks functions

* add mutex for bg_threads

* delay tests before start

* add ut for multi-task common backbone

Co-authored-by: Sherlock Huang <bahuang@OrtTrainingDev3.af05slrtruoetgaxwwjv5nsq5e.px.internal.cloudapp.net>
2021-02-24 18:00:25 -08:00
baijumeswani
7ce4075bbd
Support nested sequence and mapping types in ORTModule (#6791) 2021-02-24 15:45:56 -08:00
Weixing Zhang
40fa40f3ce
Enable more unit tests for ROCM EP (#6776)
* enable more ops and unit tests for ROCM EP
2021-02-24 15:20:50 -08:00
Thiago Crepaldi
aa5cd37ac8
Refactor device handling and basic support for PyTorch Lightning (#6758) 2021-02-24 14:12:55 -08:00
Tianlei Wu
f4acdb2ecd
Update transformers benchmark for transformers 4.3.* and ORT 1.7 (#6796)
* update benchmark for transformers 4.* and ORT 1.7

* Fix gpt2 onnx conversion for transformers 4.3.*. Add a check of transformer version >= 3.1.

* remove code related to openmp

* update pretrain model list: keep representitive models only
2021-02-24 12:52:35 -08:00
fthielke
71a70ecf6e
Allow 3D ConvTranspose in CUDA execution provider (#6794)
Co-authored-by: Felix Thielke <felix.thielke@mevis.fraunhofer.de>
2021-02-24 11:53:31 -08:00
Adam Pocock
5a473216b7
[Java] Adds extra providers (#6770)
Add providers for CoreML, ROCM, NNAPI, ArmNN
 Adding the structs for OrtCUDAProviderOptions and OrtOpenVINOProviderOptions
 Updating NNAPI flags.
 Adding the new CoreML flag.
 Adding hooks to the build system to tell Java about the new providers.
2021-02-24 10:25:05 -08:00
Ye Wang
47c8e9ad28
Adding fp16 support for Einsum Cuda kernel (#6775)
* checkin einsum fp16 support

* remove unnecessary code

* add tests

* add another test
2021-02-24 01:15:29 -08:00
jingyanwangms
c02ec38f8a
[Running CI now] Remove duplicate tests to speed up CI (#6768)
* remove tests to speed up CI

* add back _into_data_parallelism tests to see how long the CI test takes

* remove unnecessary save calls

* add back data_parallelism_full_precision_bart_path

* add data_parallelism_full_precision_path

* remove data parallelism tests

Co-authored-by: Jingyan Wang <jingywa@OrtTrainingDev3.af05slrtruoetgaxwwjv5nsq5e.px.internal.cloudapp.net>
2021-02-23 23:21:06 -08:00
Scott McKay
7aa69a1f2a
Support building python bindings when building unit tests is manually disabled. (#6771)
* If unit tests are manually excluded via `--cmake_extra_defines onnxruntime_BUILD_UNIT_TESTS=OFF` (e.g. testing changes to binary size where you want to keep the build time as quick as possible) it should still be possible to create the python bindings.

Update CMakeLists.txt to decouple the inclusion of onnxruntime_python.cmake from unit tests being enabled.

Update onnxruntime_python.cmake so it works when unit tests are disabled. Also skip copying of test py files when unit tests are disabled.
2021-02-24 14:21:57 +10:00
baijumeswani
65ba51d93e
Re-enable test and increase timeout (#6785) 2021-02-23 18:51:06 -08:00
Thiago Crepaldi
563218dcda
Update torchtext usage for pytorch transformer sample (#6767)
* Update torchtext usage for pytorch transformer sample
* Temporarily disable tests to unblock repo (failures are being worked on already)
* Update loss numbers for ORTTrainer UTs
2021-02-23 14:06:35 -08:00
Ori Levari
b8b41e3775
Update DirectML 1.4.1 to 1.4.2 for ORT 1.7 (#6780)
Co-authored-by: Ori Levari <orlevari@microsoft.com>
2021-02-23 10:52:10 -08:00
Edward Chen
09a5d6a9dc
Update docs/ONNX_Runtime_for_Mobile_Platforms.md with info about op type reduction. (#6747) 2021-02-23 10:25:23 -08:00
Edward Chen
5db0c9c648
Enable CI to cover globally allowed types (#6778)
Add test to CI build to cover type reduction with globally allowed types.
2021-02-23 10:24:12 -08:00
Tianlei Wu
8703e2c778
update benchmark_longformer for default test suite (#6772) 2021-02-22 22:00:59 -08:00
Tianlei Wu
8a6f6bc38b
add --enable_cuda_line_info to build.py (#6773) 2021-02-22 22:00:21 -08:00
Guoyu Wang
f5313cc4ce
[CoreML EP] Add options to enable CoreML EP only on hardware with Apple Neural Engine (#6765) 2021-02-22 18:55:27 -08:00
Edward Chen
ee35be0129
Support specifying globally allowed types from build script (#6677)
Add initial support for constraining operator kernel implementations (which support this type-granularity) to a set of allowed types from scripts.
2021-02-22 14:05:00 -08:00
Ivan Stojiljkovic
c91f314217
Add robust dependency check for Python package (#6436)
* Add robust dependency check for Python package

* Add version_info.py to .gitignore

* Fix Linux build

* Fix Windows CPU build

* Fix Windows 32-bit build

* Minor tweak

* Generate version_info.py earlier in onnxruntime_python.cmake

* Print a user-friendly message if cuDNN is not found in

* Relax version requirements for CUDA 11 - only the major version has to match

* Fix PATH environment variable to include CUDA 11 in 'Python packaging pipeline' (Windows/GPU)

* Fix the build with cuDNN 7
2021-02-21 15:11:28 -08:00
Scott McKay
9f7dffb109
Make it easier to fold MakeString usages to reduce binary size. (#6754)
* Decay char[n] to char* so that we get better re-use of MakeString invocations.
2021-02-20 20:41:19 +10:00
Tianlei Wu
3bda7f4d36
Fix longformer parity and perf regression (#6760)
* add fast kernel back, update benchmark and conversion scripts
2021-02-19 21:47:36 -08:00
Sergii Dymchenko
58f3aca95d
Support keyword arguments for ORTModule (#6539)
* Support keyword arguments for ORTModule.

* Add backward workaround to the test.

* Specify test name directly without -k.

* Handle unused inputs removed by ONNX exporter.
2021-02-19 13:40:44 -08:00
Guoyu Wang
47519623cd
Fix iOS/macOS build warning for inconsistent symbol visibility settings (#6750)
* Fix ios/macos build warning

* Corrent a typo

* Fix test failure

* Fix custom op test failure
2021-02-19 12:19:32 -08:00
Nat Kershaw (MSFT)
c170061998
Removed BUILD.md from master as source now lives in gh-pages (#6709) 2021-02-19 11:34:21 -08:00
Faith Xu
20d6613efb
Add direct link to build instructions on readme (#6729) 2021-02-19 10:56:50 -08:00
Yulong Wang
a25c8e52a9
fix link to samples in nodejs README (#6746) 2021-02-19 10:56:22 -08:00
Brian Martin
67e7a9c02d Merged PR 5703823: GitHub RI OnnxRuntime to DmlDev
https://microsoft.visualstudio.com/WindowsAI/_build/results?buildId=31602694&view=results

![image.png](https://microsoft.visualstudio.com/274e76ac-6b29-4f77-a85d-7914c77cabd5/_apis/git/repositories/853d2ddc-663c-4fe8-8036-dbf0d50db2d9/pullRequests/5703823/attachments/image.png)

Related work items: #31680703
2021-02-19 17:37:31 +00:00
liqunfu
79b966b01a
. (#6751)
make ort training pert test green. remove unneeded yaml
2021-02-19 09:03:58 -08:00
Brian Martin
609d0ec953 Merge remote-tracking branch 'upstream/master' into dmldev_temp 2021-02-19 07:53:00 -08:00
M. Zeeshan Siddiqui
1a2f1bd23a
Enable external CUDA allocator in ORTModule. (#6745)
* Enable external CUDA allocator in ORTModule.

* Fix assert after unification of allocators.

* Update no grad memory test.

* update comments.

* fix provider options array when not sharing allocator.
2021-02-18 20:01:13 -08:00
ytaous
39d182f7fc
ORTModule - FastGeluFusion/fp16 fix and minor LayerNormFusion cleanup (#6734)
* fastgelu fix

* assert cast outputs

Co-authored-by: Ethan Tao <ettao@OrtTrainingDev4.af05slrtruoetgaxwwjv5nsq5e.px.internal.cloudapp.net>
2021-02-18 13:17:16 -08:00
Thiago Crepaldi
fb3f1f5cc1
Enable custom ops on ORTModule (#6740) 2021-02-18 09:08:10 -08:00
Chi Lo
67c478ede4
Entropy method for calibration-based quantization (#6619)
* Add entropy method

* Update pre/post-preprocessing of yolov3

* Code refactor

* Code refactor
2021-02-18 05:50:59 -08:00
S. Manohar Karlapalem
3722dd2692
Update docs MCR image publishing policy change (#6743)
ONNX Runtime 1.7 will the last release that will publish MCR
container images for ONNX Runtime with OpenVINO EP. From ONNX
Runtime 1.8 onwards, this will be discontinued. Users are advised
to switch to using PyPi packages or build their own containers
using dockerfiles.
2021-02-18 05:45:46 -08:00
stevenlix
53eb948f4c
Upgrade TensorRT to v7.2.2 (#6452)
* upgrade to TensorRT 7.2.2

* extend GPU tensorrt CI timeout to 150 minutes

* update docker image name

* disable user interaction to avoid tensorrt container stuck when install tzdata

* upgrade to libssl1.1 for ubuntu20.04

* remove libicu60 from ubuntu20.04

* add libicu66 for ubuntu20.04

* debug

* llvm

* llvm

* disable ReverseSequenceTest.InvalidInput

* disable ReverseSequenceTest.InvalidInput

* fix issues

* fix issues

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

* disable warning 4458 for TensorRT parser

* update onnx-tensorrt submodule

* disable warnings for TensorRT parser

* update onnx-tensorrt submodule to include latest bug fixes

* update setup_env_trt

* update pool for win trt ci pipeline'

Co-authored-by: George Wu <jywu@microsoft.com>
2021-02-18 04:30:47 -08:00
Sherlock
b7b5612159
Merge pull request #6742 from microsoft/mzs/sync-from-master
Sync from master
2021-02-18 00:12:38 -08:00
Yufeng Li
b1a12b49b7
Avoid removing constant weight that is graph output (#6735) 2021-02-17 19:55:19 -08:00
Olivia Jain
ea3aee4d5f
Bumping up version to 1.7 (#6736)
* bumping up version to 1.7

* Windows AI should align with ORT Version
2021-02-17 19:07:38 -08:00
M. Zeeshan Siddiqui
40dda452cf Merge branch 'master' of https://github.com/microsoft/onnxruntime into mzs/sync-from-master 2021-02-18 03:03:01 +00:00
M. Zeeshan Siddiqui
e44ac6524f
Plug n Allocate with external CUDA allocator via PyBind. (#6679) 2021-02-17 18:59:38 -08:00
liqunfu
dd8ef4409a
Liqun/migrate perf test (#6733)
move ort training perf tests to azure devops
2021-02-17 17:48:47 -08:00
liqunfu
2c5e603bad
Liqun/nuphar nuget (#6656)
create nuphar nuget with correct name
2021-02-17 16:13:07 -08:00
Thiago Crepaldi
21f9e32c60
Merge pull request #6714 from microsoft/thiagofc/merge-from-master
Merge master into thiagofc/ortmodule-api
2021-02-17 16:08:53 -08:00
Ramakrishnan Sivakumar
a5bef6886b
Threading support for Hybrid core architecture (#6728) 2021-02-17 15:35:07 -08:00
Guoyu Wang
6810d98ea3
Update links to gh-pages for ORT minimal documents (#6721)
* Fix broken link in ort minimal docs

* Update link of build.md to gh-pages
2021-02-17 14:34:50 -08:00
Justin Stoecker
af4e5c0c6e
Minor WinML model test skip name change 2021-02-17 14:27:58 -08:00
Maajid khan
b41e9b5d4c
[OpenVINO-EP] Fixes OpenVINO-EP build on windows (#6726)
* Fixes OpenVINO-EP windows build

Openvino EP build is broken on windows. The issue
is wchar_t is UTF-16 on windows while on other platforms
such as Linux and MacOS, wchar_t is UTF-32.

so wide Unicode string has to be converted to an UTF8 string
for sure on windows.

This commit fixes this issue.
2021-02-17 13:49:03 -08:00
Thiago Crepaldi
9d4b730e46 Fix merge leftover 2021-02-17 11:58:06 -08:00
M. Zeeshan Siddiqui
9853ef84f8 Reduce binary size, limit asynchronous/backgroud thread stuff to training only. 2021-02-17 11:51:09 -08:00