Commit graph

53 commits

Author SHA1 Message Date
Ryan Lai
f207f0bf5e
Add WinML Model testing (#5417)
* Model test start with float

* Clean up code and add environment variable detection

* Move into namespace

* PR comments

* Fix linker errors in latest merge to master and also fix warning

* add skipping model test mechanism

* Return std::string instead of writing to buffer

* Address case where env variable is larger than max_path

* use const static string for test reason

* Disable x86 tests and don't build if ort memory checker is enabled

* Add comment

* Add additional failing x86 tests and ifdef for checking fo rx86 build

* PR comments
2020-10-15 19:04:12 -07:00
Tiago Koji Castro Shibata
83ead3e2eb
Fix com ptr refcount (#5404) 2020-10-08 10:18:38 -07:00
Tiago Koji Castro Shibata
cd663d58f5
Fix WinML warnings (#5228) 2020-09-19 12:41:42 -07:00
Tiago Koji Castro Shibata
f7c3e4fa99
Store/containerized apps support (#4651)
* Initial containerized/Store build

* Remove unsupported APIs

* Remove usage of STL ifstream

* Revert CMake changes

* Link to app runtime

* WCOS/Store cmake

* Update CMakeSettings.json

* Fix winapi family support

* Fix downlevel

* Downlevel build

* Remove downlevel workaround

* pep8 compliance

* Workaround WinRT headers bug

https://github.com/microsoft/cppwinrt/issues/584 in older SDK

* Always cross compile to avoid warnings as errors

* PR feedback

* More CI fixes

* PR feedback

* aiinfra build fix

* Win8 store
2020-09-09 14:36:35 -07:00
Brian Martin
f41614a875
User/brianma/telemetry (#5084)
* add runtime session id to (de)tensorization events

* append start or stop to the event names and remove opcodes

* add appsessionguid to telemetry events
2020-09-08 19:02:46 -07:00
Xiang Zhang
0dad79b495
Add SetLanguageProjection C Api and use it in four projections (#5023)
* Add SetLanguageProjection C Api and use it in four projections

* static cast enum languageprojection to uint32_t

* resolve comments

* fix typo and line added unintentionally

* revert unecessary change

* reorder c# api

* add TensorAt and CreateAndRegisterAllocator in Csharp to keep the same order as C apis
2020-09-04 14:26:39 -07:00
Brian Martin
655ffd5d5b
make (de)tensorization events measure level events (#4958)
* make tensorizer events measures

* throttle the events and add a new one SoftwareBitmapToGPUTensorTelemetryEvent

* factor out timing code into a class

* typo

* typo

* move eventimer class into its own header file

* add throttling to detensorization and remove variable timing

* make detensorization events measures as well

* add ConvertGPUTensorToSoftwareBitmapTelemetryEvent event

* de-duplicate event names

* fix comment

* PR feedback
2020-08-28 16:49:32 -07:00
Dwayne Robinson
040c5fa3e0
Merge pull request #4925 from microsoft/user/dwayner/Iron
ORT DirectML EP for Iron release, ONNX 1.5
2020-08-28 12:28:30 -07:00
Ori Levari
a7ce5b2be1
fix comment and casing of telemetry fields for named dimension overrides (#4943)
Co-authored-by: Ori Levari <orlevari@microsoft.com>
2020-08-27 17:30:56 -07:00
Sheil Kumar
6dc85b5f14
wstring_convert std::codecvt_utf8 add ~200KB to inbox windows.ai.machinelearning.dll binary size (#4932)
* switch to UTF8FromHString

* remove extra c_str

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-08-27 10:07:10 -07:00
Xiang Zhang
170fee0987
User/xianz/fixbuild (#4906)
* support Normalized_0_1 and Normalized_1_1

* add tests for Normalized_1_1

* fix build error

* fix imagetests failure

* support denterization and add more tests

* fix build

* remove added models

* disable gpu tests for CPU pipeline

* refactor based on comments and moved two added models

* merge normalizer and Denomalizer into NominalRangeConverter

* add comments

* little change

* fix build failure for amd64
2020-08-25 15:08:55 -07:00
Xiang Zhang
824fcbfd9d
support Normalized_0_1 and Normalized_1_1 (#4800)
* support Normalized_0_1 and Normalized_1_1

* add tests for Normalized_1_1

* fix build error

* fix imagetests failure

* support denterization and add more tests

* fix build

* remove added models

* disable gpu tests for CPU pipeline

* refactor based on comments and moved two added models

* merge normalizer and Denomalizer into NominalRangeConverter

* add comments

* little change
2020-08-24 13:13:50 -07:00
Dwayne Robinson
730d95107d Merged PR 5065263: ONNX backend autopilot crash in WinML ToString running test_cast_BFLOAT16_to_FLOAT
While attempting to throw an error and format an error message about an incompatible binding, WinML dies via FAIL_FAST_IF_MSG because the helper `ToString` function itself croaks :b. Instead, it should just say the data type is undefined.

```
StartGroup: Test:#62; Graph:test_cast_BFLOAT16_to_FLOAT; Executor:WinMLOperatorExecutor_Cpu;
TAEF: A crash with exception code 0xC0000409 occurred in module "Windows.AI.MachineLearning.dll" in process "te.processhost.exe" (pid:15732).
Error: TAEF: [HRESULT 0x800706BE] A failure occurred while running a test operation: 'OnnxConformanceTestsTaef::OnnxBackend'. (A crash with exception code 0xC0000409 occurred in module "Windows.AI.MachineLearning.dll" in the process hosting the test code while invoking a test operation.)
```
2020-08-20 21:20:37 +00:00
Ori Levari
5899c1197a
add telemetry for named dimension overrides (#4794)
Co-authored-by: Ori Levari <orlevari@microsoft.com>
2020-08-16 17:09:55 -07:00
Sheil Kumar
8a66ad79a6
Add Experimental WinRT API IDL as placeholder for adding new winrt features (#4736)
* Add experimental winrt api idl with dummy type to satisfy the build

* remove experimental from the api_lib target

* make experimental api available on windows builds also

* remove /y /d

* revert some pathing changes

* remove experimental api call from tests

* revert cppwinrt cmake changes

* switch to stdapi

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-08-12 12:45:19 -07:00
Ryan Lai
f9bd52f852
Log telemetry for WinML Native API for setting intra op num usage (#4700)
Co-authored-by: Ryan Lai <ryalai96@gmail.com>
2020-08-04 09:44:23 -07:00
Ori Levari
e6ef3653a7
Add Named Dimension Override API to LearningModelSessionOptions (WinML) (#4606)
Co-authored-by: Ori Levari <orlevari@microsoft.com>
2020-08-03 16:04:21 -07:00
Ryan Lai
5ce675c3b9
Expose Onnxruntime Intra Op thread controls through WinML Native API (#4638)
* Register ILearningModelSessionOptionsNate interface

* Threading options exposed

* Add interrogator for Session options

* Add test

* Polish test

* PR comments

* Set intra op threads

* Add adapter api to grab intra op threads

* Add adapter test for getting intraop num threads

* Make ILearningModelSessionNative and update winml api test

* Make it required when building engine to set the intraop num threads

* Make test  more pretty

* Change naming of idl function

* Revert "Change naming of idl function"

This reverts commit c06916aa5bf94e3bf233ed281e508b935fc8638d.

* PR comment on naming

* Skip the test because it's influenced if it's built with openmp

Co-authored-by: Ryan Lai <ryalai96@gamil.com>
2020-07-30 17:55:26 -07:00
Sheil Kumar
0a8bfb10fa
Inbox WinML tests fail because Inbox loads binaries from system32 (#4660)
* make dml and onnxruntime system32 only when winml and onnxruntime is loaded from system32

* use __ImageBase as that will not incur the unsupport store api call into GetModuleHandleEx

* remove accidental comment

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-07-30 00:09:18 -07:00
Sheil Kumar
efa393e596
WinML should dynamically link against onnxruntime.dll and only system32 for inbox builds (#4615)
* Dynamically link onnxruntime.dll

* fixes

* add preceeding backslash to onnxruntime.dll for inbox builds

* remove /d

* loadlibrary -> loadlibraryex

* use loadlibrary system32 option

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-07-27 09:56:49 -07:00
Sheil Kumar
c361a59cff
disable gpu timeouts in winml (#4604)
Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-07-24 13:44:44 -07:00
Tiago Koji Castro Shibata
48d969f4bf
Constexpr CreateFeatureValueFromInspectable (#4460) 2020-07-24 13:08:14 -07:00
Sheil Kumar
02aea5d2d4
rename telemetry provider back to Microsoft.Windows.AI.MachineLearning (#4533)
Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-07-16 19:51:06 -07:00
Sheil Kumar
fdb4a3a2e8
Add cppwinrt and cswinrt tests in windowsai nuget pipeline (#4381)
* build e2e cppwinrt tests

* add use nuget task

* make all referenced to package version prop/target-ified

* remove dupe props/targets reference

* work around project.assets.json error by deleting it

* powershell test invocation

* switch to batch script

* print debug info

* update x86->x64

* stdio.h

* pushd/popd

* add csharp tests

* package.config -> packages.config

* typo

* x86 -> anycpu

* debug is default

* add test path

* update csproj as well

* debug

* really replace all package versions

* debug output

* really use [PackageVersion]

* sleep intead of converting async operation to task and waiting

* dont close software bitmap

* switch to powershell script

* remove binding check

* continue on failure

* continuse on error action

* continueOnError and errorActionPreference

* tabbing

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-07-07 09:36:42 -07:00
Jeff Bloomfield
59af3ea278
Add missing D3D12 resource barriers and fences to Winml (#3941)
* Add missing D3D12 resource barriers to Winml

* Fix unsafe descriptor usage in Winml tensorization
2020-05-20 23:19:44 -07:00
Jeff Bloomfield
1c1685ad2b
Fix error handling in LearningModelSession.cpp (#3920) 2020-05-13 10:13:16 -07:00
Jeff Bloomfield
f1c19f8495 merge master 2020-04-25 19:04:58 -07:00
Tiago Koji Castro Shibata
f48b9e2ea7
Add adapter session tests (#3522)
* Start adapter tests

* Fix more adapter session CMake

* Implememt adapter session tests

* Fix adapter test breaks

* Test fixes, profiling test

* Fix adapter w/ DML tests

* Cleanup

* Fix WinML adapter profiling test

* Fix memory leaks

* Remove FIXME
2020-04-24 14:39:54 -07:00
Ori Levari
66343e2fcf
use map with case insensitive hash and equals functions for learningmodel metadata. add test to verify case insensitive functionality. (#3671)
Co-authored-by: Ori Levari <orlevari@microsoft.com>
2020-04-24 10:46:10 -07:00
Jeff Bloomfield
88732cd092 upstream/jeffbloo/TrimOnSessionInitializationEnd 2020-04-19 13:49:23 -07:00
Jeff
7d523d2580 Merge remote-tracking branch 'upstream/master' into jeffbloo/TrimOnSessionInitializationEnd 2020-04-19 11:58:44 -07:00
Jeff Bloomfield
8ee5953153 Merge remote-tracking branch 'upstream/master' into user/jeffbloo/MergeGithubMasterToDmlDev1 2020-04-19 11:52:44 -07:00
Jeff Bloomfield
a4e312da43 Fix build error in D3DDeviceCache.cpp 2020-04-19 11:52:41 -07:00
Tiago Koji Castro Shibata
14e387aa1a
Fix WinML namespace build break (#3583)
* Add missing winrt namespace

* Conditional compilation of dxcore code

* Fix TAEF macros
2020-04-18 20:46:01 -07:00
Jeff Bloomfield
11baa4b56d Merge user/ticastro/fix-wai-build 2020-04-17 14:10:50 -07:00
Jeff Bloomfield
822883314e merge upstream/master 2020-04-17 13:47:07 -07:00
Sheil Kumar
2717c178cc
Fork the WinML APIs into the Microsoft namespace (#3503)
* Migrate winml to Microsoft Namespace (packaging changes are pending)

* add ns_prefix toggle

* fix packaging

* Users/sheilk/add missing raw header (#3484)

* add dualapipartition

* wrong variable for repo root

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>

* remove existence check to force failures

* extra paren

* dualapipartition needs to be referenced from the source

* add microsoft.ai.machinelearning.dll to the output dir

* rename the idl file so that assembly info is correctly added into the winmd

* fix namespaces

* update namespaces

* default to microsoft, and add namespace override as build argument

* update cmakesetings.json as well

* remove from cmakelists.txt

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
Co-authored-by: Changming Sun <chasun@microsoft.com>
2020-04-17 06:18:54 -07:00
Jeff
e89dd92387 Flush and trim resources in DML EP in new OnSessionInitializationEnd method 2020-04-14 21:40:53 -07:00
Jeff Bloomfield
b04e48333d Merge branch 'master' into DmlDev 2020-04-09 11:30:01 -07:00
Tiago Koji Castro Shibata
1fd21c109e Fix race condition creating ConverterResourceStore (#3419) 2020-04-07 11:57:27 -07:00
Tiago Koji Castro Shibata
517693a507
Fix race condition creating ConverterResourceStore (#3419) 2020-04-04 20:10:07 -07:00
Brian Martin
77c7d09ced
ERROR_NOT_SUPPORTED doesn't trigger Failed Hresult. Need E_NOTIMPL (#3396) 2020-04-01 10:06:00 -07:00
Xiang Zhang
810a10b230
Enable Onnxruntime Telemetry by Default for 1.3 (#3338) 2020-03-26 20:57:39 -07:00
Sheil Kumar
51e95ea946
Make ort errors appear in winml exceptions (#3316)
Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-03-25 12:20:40 -07:00
Sheil Kumar
b72fe13941
Update WinML Projection to accept sequence of tensors (#3287)
* Enable sequence of tensor

* add tests

* small updates

* There should only be 2 elements returned

* CR feedback, and another 6->2 check update in the test.

* missing semicolon...

* Add explicit to constructor taking pointer paramter

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2020-03-23 15:55:20 -07:00
Ori Levari
e63f817eb6
avoid IDXGIFactory 6 where possible to enable WinML GPU Path downlevel to RS3 (#3180) 2020-03-16 15:25:32 -07:00
Xiang Zhang
682dde2b3b
add dml_ep_lock (#3200)
* add dml_ep_lock

* Move Winml process-wide lock back to individual sessions
2020-03-16 14:32:12 -07:00
Jeff Bloomfield
be0c0da9ef Merged PR 4408735: Fix control over metacommands being enabled or disabled
Fix control over metacommands being enabled or disabled

Related work items: #25512218
2020-03-10 17:13:59 +00:00
Ori Levari
5e0f7412cd
Properly handle downlevel and WCOS scenarios (#3075) 2020-02-25 17:47:02 -08:00
Xiang Zhang
18aa0940c2
checking condition is wrong (#3025)
* checking condition is wrong

* remove unnecessary check
2020-02-19 13:29:42 -08:00