Commit graph

1835 commits

Author SHA1 Message Date
Tiago Koji Castro Shibata
dbe7d97fa1
CMake cross-generator fixes (#2790)
* Fix compilation w/ non-VS CMake generators

* Fix custom WINMD target in Ninja

* Remove usage of msbuild .targets file

* Fix linking using DML in Ninja

* Automate SDK kit version choice

* Cleanup DML package install

* Fix SDK version detection

* Fix comment

* Revert unittest linkage changes

* Fix latest SDK detection

* Don't link to non-uapcore libraries

* Remove MessageBoxA reference and unused link libs
2020-01-14 15:03:33 -08:00
Ori Levari
6ad3e74f4a
Filter CPU case for IsFloat16Supported (#2802) 2020-01-13 13:56:14 -08:00
Ryan Lai
8d017f5701
Scneario Test : Build Google Test and Taef Test based on preprocessor definition (#2809)
* Add winml macro wrappers on top of google test macros

* change test methods to disabled

* Add custom winml macros for both taef and google tests

* PR comments
2020-01-13 09:22:54 -08:00
Ryan Lai
81362ad6a7
Move winml_provider_factory.h to proper location (#2801) 2020-01-09 11:21:18 -08:00
Ori Levari
9cefde3391
User/orilevari/32bit comparison warning (#2800)
* use correct type for for loop

* explicitly specify void for parameters of OrtGetApiBase because the function is defined in c, so when the function is just (), it is interpreted as having an unknown number of parameters. This was causing compiler warning C4276.
2020-01-08 15:04:59 -08:00
Ryan Lai
5122dbf8b1
Remove usage of WHOLEARCHIVE in WinML CMake and add WinMLAdapterFactory (#2726)
* Remove usage of WHOLEARCHIVE in WinMLAdapter CMake and add WinMLAdapterFactory

* PR feedback, no need for dll(export) since using def file

* PR comments

* Small comment in gen_def.py
2020-01-02 16:09:30 -08:00
Tiago Koji Castro Shibata
c1561f8d9f
Fix cgmanifest.json generating script (#2770)
* Fix protobuf submodule name

* Workaround pygit2 bug
2020-01-02 15:34:48 -08:00
Tiago Koji Castro Shibata
54389a7051
Fix invalid JSON in cgmanifest.json (#2760) 2019-12-30 15:03:26 -08:00
Tiago Koji Castro Shibata
fd45fdd9dc
ARM CI (#2759)
* Set ARM agent pool

* Set CMake generator to VS 2019 in ARM

* Use system-wide CMake instead of custom version

Our custom version is too old for VS 2019

* Use DML and build shared lib in ARM CI

* Restore nuget packages in ARM CI

* Disable DML

* Refactor ARM debug/release builds

* Use system packaged Python version

* Remove hardcoded Python path

* Downgrade Python to 3.7 for build

* Remove explicit CMake path
2019-12-30 14:34:58 -08:00
Ori Levari
1a9d0d9c32 use correct type for for loop (#2755) 2019-12-30 11:56:11 +10:00
Ori Levari
185447f0e5 Merge branch 'master' into windowsai 2019-12-20 17:38:37 -08:00
Ori Levari
f0046a1531
switch back order of session_state_ and execution_providers_ in InferenceSession.h (#2714) 2019-12-20 17:26:51 -08:00
Xiang Zhang
a3750c102f
send shutdown event when dll is unloaded and EvaluationStop, SessionC… (#2704)
* send shutdown event when dll is unloaded and EvaluationStop, SessionCreationStart Events.

* Add EvalutationStart Event

* add comment
2019-12-20 16:11:21 -08:00
Xavier Dupré
7c0235c15a
Propagate documentation modification from rel-1.0.0 (#2713) 2019-12-21 00:25:45 +01:00
Ori Levari
967ffc03cc
a subset of the models in testdata were missing an ir_version. update this ir_version to 3. (#2702) 2019-12-20 13:56:11 -08:00
Yufeng Li
72286d91e7
fix the CUDNN_BN_MIN_EPSILON difference issue between cudnn7.3 and cudnn7.6 (#2681) 2019-12-20 13:49:03 -08:00
Ryan Lai
db9b72df43 Merge remote-tracking branch 'origin/master' into user/rylai/merge_with_master 2019-12-20 11:15:37 -08:00
jignparm
64112db346
Fix C# handling of unicode strings (#2697)
* Fix C# handling of unicode strings

* more tests

* check for handle before freesing

* variable reuse efficiency

* refactor and cleanup utf8 o utf16 conversion block
2019-12-19 21:02:54 -08:00
Dmitri Smirnov
233bdd268b
Advance Featurizers commits and fix up ORT lining issues. (#2705)
Update featurizers. Fix up constraint issue.
  Pass static VCRT library option down to Featurizers CMAKE.
  Make build Featurizers OFF by default.
  Rename registration call.
2019-12-19 20:27:36 -08:00
Ryan Lai
3429b0f556 Deref unique pointer for session_state 2019-12-19 16:55:17 -08:00
Ryan Lai
a591d15c2f Merge remote-tracking branch 'origin/master' into user/rylai/merge_with_master 2019-12-19 16:17:00 -08:00
Ryan Lai
4ccbd52242 Revert "User/orilevari/windowsai master merge (#2674)"
This reverts commit fe26146311.
2019-12-19 16:11:48 -08:00
Ryan Lai
c30473989e Revert "Windowsai without fi (#2701)"
This reverts commit 285d4c85ff.
2019-12-19 16:11:16 -08:00
KeDengMS
9b14d8fd67
Update rnn_benchmark to reset OMP threads (#2698) 2019-12-19 14:10:39 -08:00
Faith Xu
bb7f43ee91
Documentation update: build instructions (#2636)
* Spacing fix for code block

* Update instructions

Include java, acl, and nn api instructions on build page

* Update build instructions to link to build.md

* typo

* Update build instructions to link to build.md

* Include other minor build.md page updates

* Update CUDA version

* Fix dockerfile links
2019-12-19 13:40:34 -08:00
Ryan Lai
285d4c85ff
Windowsai without fi (#2701)
* Disable Attention fusion tests when DISABLE_CONTRIB_OPS is defined (#2529)

* Setup java ci (#2528)

* Add provision in ORT for session options to be parsed when available via model file  (#2449)

* Initial commit

* Fix gitmodules

* Nits

* Nits

* Updates

* Update

* More changes

* Updates

* Update

* Some updates

* More changes

* Update

* Update

* Merge

* Update

* Updates

* More changes

* Update

* Fix nits

* Updates

* Fix warning

* Fix build

* Add comment

* PR feedback

* PR feedback

* Updates

* Updates

* Update

* More changes

* Fix build break

* Comment test for now

* Updates

* Updates

* PR feedback

* Updates

* Nits

* Add tests

* Fix build

* Fix build

* Fix build

* Fix build break

* Fix build

* Nits

* PR feedback

* More change

* Expose GetSessionOptions in pybind logic and add unit test for python

* Fix build

* PR feedback

* PR feedback

* Revert "Disable thread pool creation when enabled OpenMP (#2485)" (#2535)

This reverts commit 7c7d5a149c.

* Add dynamic shape support in TensorRT execution provider (#2450)

* remove onnx-tensorrt submodule

* add new onnx-tensorrt submodule (experiment) for trt6

* update engine build for trt6

* update compile and compute for tensorrt6.0

* Update tensorrt_execution_provider.cc

* Update tensorrt_execution_provider.cc

* Update tensorrt_execution_provider.cc

* Update tensorrt_execution_provider.cc

* switch to onnx-tensorrt master for TensorRT6'

* Update tensorrt_execution_provider.cc

* Handle dynamic batch size and add memcpy in TensorRT EP

* update test cases

* Update tensorrt_execution_provider.cc

* update onnx-tensorrt submodule

* Update Dockerfile.ubuntu_tensorrt

* Update Dockerfile.ubuntu_tensorrt

* Update run_dockerbuild.sh

* Update run_dockerbuild.sh

* Update install_ubuntu.sh

* Update concat_op_test.cc

* Update tensorrt_execution_provider.cc

* Upgrade TensorRT to version 6.0.1.5

* Update onnxruntime_providers.cmake

* Update CMakeLists.txt

* Update reduction_ops_test.cc

* Update install_ubuntu.sh

* Update Dockerfile.ubuntu_tensorrt

* Update Dockerfile.tensorrt

* Update BUILD.md

* Update run_dockerbuild.sh

* Update install_ubuntu.sh

* Update onnxruntime_providers.cmake

* Update install_ubuntu.sh

* Update install_ubuntu.sh

* Update gemm_test.cc

* Update gather_op_test.cc

* Update CMakeLists.txt

* Removed submodule

* update onnx-tensorrt submodule

* update header file

* Removed submodule

* add submodule onnx-tensorrt kevin's branch shape-test'

* add debugging code

* Update tensorrt_execution_provider.cc

* Update tensorrt_execution_provider.cc

* merge master

* Removed submodule

* update onnx-tensorrt submodule

* add more changes for dynamic shapes

* Update tensorrt_execution_provider.cc

* update for dynamic shape

* update dynamic shape processing

* fix logger issue

* remove submodule onnx-tensorrt

* add submodule onnx-tensorrt

* add env variable min_subgraph_size

* remove redundency

* update document

* use onnxruntime::make_unique

* fix multi-run issue

* remove some tests to save CI build time

* Add dynamic shape test

* Update TensorRT-ExecutionProvider.md

* Add example of running Faster R-CNN model on TensorRT EP

* Add more details on env variables

* update environment variables

* Update tensorrt_basic_test.cc

* Update model tests

* Update tensor_op_test.cc

* remove --use_full_protobuf

* Update build.py

* User/xianz/telemetry (#2458)

* enabme telemetry

* enable telemetry

* set enable telemetry as default

* for debugging

* remove log and set disable telemetry as default back

* delete private file while testing

* resolve comment: mainly add license header, rename macro and update docs

* rewording in privacy.md

* Fix integer overflow in cuda NonMaxSuppression implementation (#2540)

* add test case that should pass but fail

* fix nms

* extract int_max_output_boxes_per_class

* Introduce container type runtime checks and other improvements (#2522)

Rework TensorSeq in a manner consistent with Tensor and SparseTensor
  in terms of type system setup.
  Reduce templating. Introduce helpers to ensure the same
  data type.
  Make OrtValue __dtor not virtual.
  Introduce ContainerChecker

* Fix C API tests for centos and mac (#2544)

* change c++14 to c++11

* add ld lib path for centos

* enable csharp tests on macos

* fix C API test on MacOS + fix manylinux dotnet install

* fix manylinux dotnet install

* fix lib link

* Add back executable bit to build.py

* Fix a bug handling negative begin pad values in Pad op (#2550)

* Fix bug in Pad op

* Update

* DNNL CMAKE update (#2548)

* Fix android build (#2558)

* Update win-x86-ci.yml (#2557)

Fix build pipeline break

* Re-enable Windows C# tests (#2564)

* disable onnx_test_runner -x invocations for dnnl (#2568)

* Allow sequence length to be symbolic (#2559)

* setup java ci mac (#2570)

* make layernorm fusion to support opset 11 (#2545)

* Fix a warning found in the latest VS release

* Add more check on SkipLayerNorm and BiasGelu fusion (#2574)

* Fix file not found error during docker build. (#2569)

* Add ConvTranspose1D (#2578)

* Ryanunderhill/packagename test (#2582)

* [Nuphar EP] fixes for some object detection models (#2581)

Update notebook tutorial with multi-threaded int8 GEMM from #2517

* EmbedLayerNormalization Fusion Improvement (#2553)

Embedding layer norm fusion improvements - add more checks

* Update version (#2584)

* Temporarily exclude vgg19 test from Python backend test

1. temporarily exclude vgg19 test which comsumes too much memory, run out of memory on Upsquared device. Single test pass for vgg19, need furture investigation (#2588)
2. Update docker file to decrease the docker image size

* Update docs for Android NNAPI EP (#2586)

* Fix lto bug for protobuf and ubuntu

* add path to build dir before test run (#2590)

* Add missig env variables for mac pipeline test (#2595)

* Fixed an issue in updating realized dims (#2597)

when we update realized dims for scan's output, the sliced axis also
needs to be inclusive, i.e. we should check with "dim >= insert_inclusive_axis",
because the offset in the symbols are based on Scan sugraph.
Otherwise, we would end up with shape mismatch later.

* Java API for onnxruntime (#2215)

* Add support for opset 11 in reshape fusion (#2592)

 Support opset verion 11 in reshape fusion

* Rename automl python tools folder to featurizer_ops. (#2593)

* Support opset 11 subgraph of Squad model in Embed Layer Normalization (#2605)

Support opset 11 Squad model that is exported from PyTorch nightly. The embed layer uses Range op which is missed in the transformer.

* symbolic shape inference: fix warnings in GPT-2 model (#2608)

And revise nuphar perf test on BERT squad

* Dump subgraph ID and fused graph ID (#2607)

* Dump subgraph ID and fused graph ID

Dump subgraph ID and fused graph ID for better debugging

* Remove local static fused_count

added a field global_fused_count_ to NupharExecutionProvider class

* EmbedLayerNormalization Fusion For Dynamic Squad Model Opset 10 (#2613)

Support subgraph of SQuAD model exported from pytorch with dynamic input axes

* Allow providers to be set for InferenceSession at construction (#2606)

* Remove unnecessary parameter in some places in GatherElements implementation (#2612)

* Remove unnecessary parameter in some places

* Update

* Update

* Make sure fenced tensor could not reuse other tensor. (#2561)

Fix random error caused by this.

* Improve Embed Layer Norm Fusion for SQuAD with static input shape  (#2621)

* fix float16 comparison in initializer (#2629)

* epsilon attribute for layernormalization fusion (#2639)

* removed unnecessary batch file and fix path (#2640)

* Add shape inference to ConvTransposeWithDynamicPads schema (#2632)

* Improve cuda expand() opeator's performance. (#2624)

* Cuda pad optimize when no padding is needed. (#2625)

* Shortcut cuda Pad() when no padding is needed.

* Optimize cuda scatter() on 2D compatible. (#2628)

* Optimize cuda scatter() on 2D compatible.

* Add some comments.

* fix build error for ARM (#2648)

* Improve performance of resize() in Nearest mode (#2626)

Special treatment for 2D, check same size as input image.
And in 2d kernel, template use_expolation.

* Fix memory exception in Layer Norm Fusion (#2644)

* Windows CI changes(#2650)

* Revert "User/orilevari/windowsai master merge (#2674)"

This reverts commit fe26146311.
2019-12-19 12:56:49 -08:00
Hariharan Seshadri
b3d0b114fe
Support Round op in the CUDA EP (#2601)
* Support Round op for the CUDA EP

* Update version

* Fix build

* Fix opset version

* Update

* PR comments

* Fix build

* Nit
2019-12-19 11:36:50 -08:00
baowenlei
715e365723
Enable int8 GEMV tensorization (#2696)
Enable int8 GEMV tensorization and improve performance.
2019-12-18 21:02:52 -08:00
Hariharan Seshadri
971bc439b5
Support CumSum op in the CUDA EP (#2647)
* Initial commit

* Initial commit

* Updates

* Fix build

* Updates

* PR feedback

* Minor optimization

* Update

* Update
2019-12-18 16:49:59 -08:00
KeDengMS
9017e93701 [NupharEP] fix for Windows build and VS 2019 (#2694) 2019-12-18 16:16:46 -08:00
Changming Sun
89d6bfaa94
VS 2019 build pipeline changes (#2693)
1. Move Win GPU pipeline to VS2019
2. Move C API pipeline to VS 2019
3. Move nuget mklml pipeline to VS 2019
4. Move windows no contrib ops pipeline to VS 2019
2019-12-18 15:34:58 -08:00
Ori Levari
1eb584d97f
various changes to properly organize and skip GPU tests. For now for No DML builds we will not run GPU tests at all. In the future we should adapt the tests to expect the appropiate errors. (#2695) 2019-12-18 14:57:27 -08:00
Yang Chen
0d5504877b
fixed "unreachable code" warnings for Windows build (#2682)
When NUPHAR_USE_MKL and NUPHAR_USE_AVX2 were not defined, we got
"unreachable code" warnings on Windows, which were turned into
errors and broke the build.
2019-12-18 12:51:19 -08:00
Changming Sun
504ba6f2ca Remove a warning 2019-12-18 11:13:34 -08:00
Dmitri Smirnov
ce7a180f21
Import more featurizers with tests (#2685)
Advance commit to 4df80d5865a9d4e97f6d0b9304d4316115a04d9e
  Add generated code for the commit before editing.
  Import more featurizers.
  Rename Automl ops domain to mlfeaturizers.
  Rename conditional compilation macro.
  Move and rename files getting rid of automl
  Rename --use_automl build switch to --use_featurizers
  Rename CMake option accordingly. Rename automl CMake targets.
  Adjust CI and packaging pipeline switches.
  Rename namespace automl to featurizers.
2019-12-17 22:17:40 -08:00
Tiago Koji Castro Shibata
5901421798
Fix memory leaks (#2679)
Fix https://microsoft.visualstudio.com/OS/_workitems/edit/24356109,
https://microsoft.visualstudio.com/OS/_workitems/edit/24388361 and
https://microsoft.visualstudio.com/OS/_workitems/edit/24388596
2019-12-17 15:08:59 -08:00
Ryan Lai
b28a3a92e6
Delete Ort Allocator in LearningModelBinding (#2653)
* Delete OrtAllocator in LearningModelBinding

* PR comments to make Ort::Allocator a smart pointer

* Small comment change

* PR feedback to clean up code

* PR feedback on move semantics

* Clean up std::move
2019-12-17 14:58:46 -08:00
Ori Levari
fe26146311
User/orilevari/windowsai master merge (#2674)
merge resolutions included pulling in telemetry logic that was merged to master and not windowsai and dereferencing InferenceSession::sessionstate now that it is a unique pointer
2019-12-17 12:23:40 -08:00
KeDengMS
c767e264c5
[NupharEP] update tutorial with GPT-2 (#2677) 2019-12-16 17:57:34 -08:00
Tiago Koji Castro Shibata
13c2eb3524
Fix leaking operator registry (#2645)
Fix https://microsoft.visualstudio.com/OS/_workitems/edit/24354916
2019-12-16 15:41:54 -08:00
Ori Levari
1f35bcb68d
do not package directml.pdb for redist packages. (#2676) 2019-12-16 14:37:53 -08:00
Jeff
b38b36a941
Increase max_num_graph_transformation_steps from 5 to 10 (#2633) 2019-12-16 14:17:37 -08:00
Jeff
9dddabf237
Miscellaneous DML EP fixes (#2634)
* Misc DML EP fixes

* Fix white space

* Build fix
2019-12-16 14:16:10 -08:00
Ori Levari
3280cf1b78
add comment for explaning private definition of dxcore d3d feature level ennum value. (#2672) 2019-12-16 12:01:53 -08:00
Ori Levari
ab6d3c7e71
define private version of dxcore enum that is added in 19H1 SDK. (#2654) 2019-12-16 11:53:28 -08:00
Tracy Sharpe
c907881852
MLAS: optimize QuantizeLinear (#2660)
This adds MLAS support to quantize a buffer using vector instructions for x86/x64/ARM64. This helper is now used for the QuantizeLinear and DynamicQuantizeLinear ops.
2019-12-16 10:56:23 -08:00
Hector Li
47503ec7a6
Initiate the build scripts for ARM ACL (#2652)
1. Add scripts to build Yocto image & toolchain
2. Update docker build scripts to support Onnxruntime build with ARM ACL 19.02/19.05
2019-12-16 09:44:19 -08:00
Yang Chen
f7412899a1
added cache version for nuphar JIT binaries (#2646)
* added cache version for nuphar JIT binaries

Previously, when the user wrongfully loaded a JIT binary generated
from a Nuphar version different from the current used one, she
would get mysterious runtime failures, because we didn't perform
any version check on JIT binaries.

This change added cache versions to the Nuphar runtime and
JIT binaries. The Nuphar runtime will issue verbose message that
informs the user version-mismatch errors.

* address CR feedback

* include NUPHAR_CACHE_VERSION in python wheel
2019-12-14 22:46:30 -08:00
Dmitri Smirnov
7c87070b24
Import Featurizers (#2643)
Import FeaturizerLibrary as ExternalPorject which is optional and is not registered as git submodule.
2019-12-13 16:07:12 -08:00
Changming Sun
a46a28b7d8
Windows CI changes(#2650) 2019-12-13 12:23:49 -08:00