onnxruntime/csharp/src
Dmitri Smirnov 322237f482
[C#] Implement OrtValue APIs (#16206)
### Description

Expose `OrtValue` class API as first-class citizen.
Make it simular with C++ API.
Enable safe direct native memory access.
Make string tensor manipulation more efficient.
Avoid intermediate structures such as `NamedOnnxValue`,
`DisposableNamedOnnxvalue` and etc.

Provide more examples with `IOBinding`, although `OrtValue` API
potentially makes `IOBinding` redundant for most of scenarios, since
`OrtValue` can be created on top of any memory.

Run all the pre-trained models now with `OrtValue` API as well.
Obsolete `OrtExternalMemory class`. Obsolete IOBinding API that takes
`FixedBufferOnnxValue`.

### Motivation and Context
Make the API efficient and uniform with C++.

This aspires to address: 
https://github.com/microsoft/onnxruntime/issues/14918
https://github.com/microsoft/onnxruntime/issues/15381

Cc: @Craigacp
2023-06-29 08:59:23 -07:00
..
Microsoft.AI.MachineLearning Enable Microsoft.AI.MachineLearning NuGet with WinUI projects (#16415) 2023-06-20 13:10:19 -07:00
Microsoft.AI.MachineLearning.Interop WindowsAI build failing due to deprecated .NET5 SDK missing in build image (#15383) 2023-04-06 08:51:07 -07:00
Microsoft.ML.OnnxRuntime [C#] Implement OrtValue APIs (#16206) 2023-06-29 08:59:23 -07:00