Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cherry-pick tagged commits to 1.12.0 release candidate #12097

Merged
merged 30 commits into from
Jul 7, 2022

Conversation

RandySheriffH
Copy link
Contributor

@RandySheriffH RandySheriffH commented Jul 6, 2022

Cherry-pick tagged commits to 1.12.0 release candidate.

garymm and others added 28 commits July 5, 2022 20:12
Follow-ups that need to happen after this and before the next ORT release:
* Support SequenceMap with #11731
* Support signal ops with #11778

Follow-ups that need to happen after this but don't necessarily need to happen before the release:
* Implement LayerNormalization kernel for opset version 17: #11916

Fixes #11640
* Setting default version values for ovep dlls as well

* Update backend_manager.cc

Co-authored-by: mayavijx <mayax.vijayan@intel.com>
Co-authored-by: mohsin <mohsinx.mohammad@intel.com>
* ooptimize t5 encoder

* update

* update

* update

* refactor expand impl

* cuda tests passed

* update

* alignment

* more alignments

* review comments
…ng thread spinning (#11841)

Introduce Start/Stop threadpool spinning switch
Add a session config option to force spinning stop at the end of the Run()
* Add nested function call tests

* Add overload for Specialize

* Pass symboltable to onnx shape inference

* Avoid renaming empty names

* Enable sequence_map tests which failed before this change
* Register signal ops for op set 17

Note code is mostly being moved, not added. These ops were previously
only registered as Microsoft contrib ops and only built if
`BUILD_MS_EXPERIMENTAL_OPS=1`. They've been added to the ai.onnx
standard op set in version 17.

Main components of this change:

* Move the kernels from the conrib_ops directory to the
  core directory.
* Add function bodies for ms experimental ops. This will allow
  old models that use the contrib ops to continue to function.
  All the function bodies consist of a single op (the
  new standard op), so performance overhead should be minimal.

Minor clean-up also in this change:

* De-duplicate get_scalar_value_from_tensor: put it in a new utils.h.
* Fix some bugs that caused compilation errors with the experimental
  ops. Tested with `build.sh --ms_experimental`
* Fix some spelling errors and lint violations.
* Replace a couple of switch statements with `MLTypeCallDispatcher`.
* Use `InlineVector` instead of `std::vector`.

Unblocks #11640
…l signal op definitions (#12006)

* fix winml tests

* remove legacy test

* switch idft -> dft+inverse attr

* upgrade opset 13->17 for signal ops tests
…ls. (#12008)

Add support for double tensor output in TestPreTrainedModels.
…ation lacking training_mode attribute (#12010)

FusedBatchNormalization include training_mode attribute
* create op from ep

* read input count from context

* create holder to host nodes

* fix typo

* cast type before comparison

* throw error on API fail

* silence warning from minimal build

* switch to unique_ptr with deleter to host nodes

* fix typo

* fix build err for minimal

* fix build err for minimal

* add UT for conv

* enable test on CUDA

* add comment

* fix typo

* use gsl::span and string view for Node constructor

* Added two APIs - CopyKernelInfo and ReleaseKernelInfo

* pass gsl::span by value

* switch to span<NodeArg* const> to allow for reference to const containers

* fix typo

* fix reduced build err

* fix reduced build err

* refactoring node construction logic

* rename exceptions

* add input and output count as arguments for op creation

* refactor static member

* use ORT_CATCH instead of catch

* cancel try catch

* add static value name map

* format input definition and set err code

* fix comments

* fix typo
* Pad fallback to CPU

* Added queryPad in operatorRegistration.cpp

* Acknowledged PR comments

* Used any_of

* used none_of instead of any_of

Co-authored-by: Sumit Agarwal <sumitagarwal@microsoft.com>
…to_pad (#11984)

* Add warning about future computation change for Convtranspose with auto_pad

* improve msg

* update TODO to make lint happy

* update more contents for warning and add if

* valid was not infected

* move it into kernel registration

* parse auto_pad myself

* try to use conv_transpose_attrs_.auto_pad directly
)

Fix windows and linux eager build to torch 1.11.0.
place tmp kernel def as local variable to cover the lifetime of kernel creation
* Add net6 targets.
Remove maccatalyst as we don't have a native build targetting that.

* Set platform in macos targets

* Add targetFramework entries

* Move NativeLib.DllName definition and set using preprocessor values for simplicity. Couldn't get it to build with the preprocessor based setup when it was in a separate file.

Update the nuspec generation to set platform version for .net6 targets. TODO: Validate versions. I copied them from the managed nuget package the packaging pipeline generated prior to adding targets. Possibly w could/should lower some of the versions.

Hopefully the need to specify a version goes away when the release version of VS2022 supports .net6.

* Try android 31.1 as https://github.com/actions/virtual-environments/blob/main/images/win/Windows2022-Readme.md suggests that should be available on the CI machines

* Fix patch version mismatch
Add some extra debug info in case it helps

* Debug nuget location in CI

* Add workspace entry back in

* Add steps

* One more attempt with hardcoded nuget.exe path and original android31.0 version

* Better fix - found explicit nuget download and updated version there.

* flake8 fixes

* Fix black complaints.

* Exit Microsoft_ML_OnnxRuntime_CheckPrerequisites for net6 iOS.

* Removed outdated comment
* Update C# runtest.sh for opset 17

Should have been part of #11924

* get appropriate opset version from onnx doc

* use absolute rather than relative path

* fix typo in var name
…m the Android AAR. (#12075)

The generated bindings causes C# build errors that require workaround code. Disabling generation should avoid the need for any workarounds.

As the user has the C# ORT package with the C# to C bindings there's no need for binding generation that calls the ORT Java API (which is C# -> Java ->C).
* Update to DML 1.9

* Appease obnoxious Python formatting tool
@RandySheriffH RandySheriffH requested a review from a team as a code owner July 6, 2022 03:15
@RandySheriffH RandySheriffH changed the title Cherry picks for release 1.12.0 Cherry-pick tagged commits to 1.12.0 release candidate Jul 6, 2022
pranavsharma
pranavsharma previously approved these changes Jul 6, 2022
@lgtm-com
Copy link

lgtm-com bot commented Jul 6, 2022

This pull request introduces 1 alert and fixes 2 when merging 4bacff4 into 64f95d4 - view on LGTM.com

new alerts:

  • 1 for Commented-out code

fixed alerts:

  • 1 for Expression has no effect
  • 1 for `__init__` method calls overridden method

@fdwr fdwr mentioned this pull request Jul 6, 2022
pengwa and others added 2 commits July 6, 2022 13:15
fix symbolic shape error due to upgraded numpy + legacy sympy
* check consumers of dq node before swap dq and transpose

* add unit test
@lgtm-com
Copy link

lgtm-com bot commented Jul 6, 2022

This pull request introduces 1 alert and fixes 2 when merging 57730b2 into 64f95d4 - view on LGTM.com

new alerts:

  • 1 for Commented-out code

fixed alerts:

  • 1 for Expression has no effect
  • 1 for `__init__` method calls overridden method

@RandySheriffH RandySheriffH merged commit 62226d0 into rel-1.12.0 Jul 7, 2022
@RandySheriffH RandySheriffH deleted the cherry-1.12.0 branch July 7, 2022 04:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet