onnxruntime/winml/lib/Api.Ort/OnnxruntimeSessionBuilder.h
Sheil Kumar 6255194659
All LearningModelSessions created from a common LearningModelDevice should share the same thread pool (#11457)
* Share thread pools between devices

* make tests reuse device

* Change cpu thread pool options for dml sessions to use 1 thread with no spinning

* fix test failure

* Update missing type constraints for dft

* Add comment and rename inference session parameter

* default missing causing inconsistent test behavior

Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
2022-05-13 11:12:43 -07:00

25 lines
No EOL
792 B
C++

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
#pragma once
namespace _winml {
// The IOrtSessionBuilder offers an abstraction over the creation of
// InferenceSession, that enables the creation of the session based on a device (CPU/DML).
MIDL_INTERFACE("2746f03a-7e08-4564-b5d0-c670fef116ee")
IOrtSessionBuilder : IUnknown {
virtual HRESULT STDMETHODCALLTYPE CreateSessionOptions(
OrtSessionOptions * *options) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateSession(
OrtSessionOptions * options,
OrtThreadPool* inter_op_thread_pool,
OrtThreadPool* intra_op_thread_pool,
OrtSession * *session) = 0;
virtual HRESULT STDMETHODCALLTYPE Initialize(
OrtSession * session) = 0;
};
} // namespace _winml