Skip to content

Commit 21c7ab3

Browse files
Merge pull request #663 from intel/sync_msft_17_4_25
Backmerging with Msft commits
2 parents ad5f824 + 254bda0 commit 21c7ab3

File tree

202 files changed

+6918
-2435
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

202 files changed

+6918
-2435
lines changed
+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Linux OpenVINO CI
2+
3+
on:
4+
push:
5+
branches: [ main, 'rel-*' ]
6+
pull_request:
7+
branches: [ main, 'rel-*' ]
8+
workflow_dispatch:
9+
10+
concurrency:
11+
group: ${{ github.workflow }}-${{ github.ref }}
12+
cancel-in-progress: true
13+
14+
permissions:
15+
contents: read
16+
packages: write # Needed if the reusable workflow pushes images
17+
attestations: write # Optional: for artifact attestations if enabled
18+
id-token: write # Optional: may be needed for OIDC authentication (e.g., ACR)
19+
20+
jobs:
21+
build_test_openvino:
22+
name: Build and Test OpenVINO EP (AlamLinux8, Py3.12)
23+
# Use the reusable workflow as the other Linux CI pipelines
24+
uses: ./.github/workflows/reusable_linux_build.yml
25+
with:
26+
pool_name: "onnxruntime-github-Ubuntu2204-AMD-CPU"
27+
build_config: Release
28+
# Architecture: OpenVino only supports Intel X64
29+
architecture: x64
30+
dockerfile_path: tools/ci_build/github/linux/docker/inference/x86_64/python/openvino/Dockerfile
31+
docker_image_repo: onnxruntimeopenvino
32+
33+
execution_providers: 'openvino'
34+
35+
extra_build_flags: '--use_openvino CPU --enable_generic_interface --build_shared_lib'
36+
37+
# Python Path Prefix: Set the correct Python 3.12 path inside the manylinux container
38+
python_path_prefix: 'PATH=/opt/python/cp312-cp312/bin:$PATH'
39+
40+
run_tests: true
41+
upload_build_output: false
42+
43+
# Secrets: Pass the necessary GitHub token
44+
secrets:
45+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/publish-python-apidocs.yml

+1
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ jobs:
4040
- name: Generate Python docs with Sphinx
4141
run: |
4242
cd tools/doc
43+
chmod +x *
4344
./builddoc.sh /usr/bin ../.. ../../build
4445
- name: Log source commit
4546
run: git rev-parse --short HEAD > build/docs/html/source-version.txt

cgmanifests/cgmanifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"maven": {
1919
"GroupId": "com.google.protobuf",
2020
"ArtifactId": "protobuf-java",
21-
"Version": "3.21.7"
21+
"Version": "3.25.5"
2222
},
2323
"DevelopmentDependency": true
2424
}

cmake/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ option(onnxruntime_GENERATE_TEST_REPORTS "Enable test report generation" OFF)
6262
option(onnxruntime_ENABLE_STATIC_ANALYSIS "Enable static analysis" OFF)
6363
option(onnxruntime_USE_CUSTOM_STATIC_ANALYSIS_RULES "Use a custom SDL Rule. It is mainly for our CI build" OFF)
6464
option(onnxruntime_REDIRECT_STATIC_ANALYSIS_OUTPUTS_TO_FILE "Use a custom SDL Rule. It is mainly for our CI build" OFF)
65-
option(onnxruntime_ENABLE_PYTHON "Enable python buildings" OFF)
65+
option(onnxruntime_ENABLE_PYTHON "Enable python bindings" OFF)
6666
# Enable it may cause LNK1169 error
6767
option(onnxruntime_ENABLE_MEMLEAK_CHECKER "Experimental: Enable memory leak checker in Windows debug build" OFF)
6868
option(onnxruntime_USE_CUDA "Build with CUDA support" OFF)

docs/python/ReadMeOV.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Requirements
1616
^^^^^^^^^^^^
1717

1818
- Ubuntu 18.04, 20.04 or Windows 10 - 64 bit
19-
- Python 3.11, 3.12 and 3.13 for Windows and Linux
19+
- Python 3.10, 3.11, 3.12 and 3.13 for Windows and Linux
2020

2121
This package supports:
2222
- Intel® CPUs
@@ -29,7 +29,7 @@ This package supports:
2929
Please install OpenVINO™ PyPi Package separately for Windows.
3030
For installation instructions on Windows please refer to `OpenVINO™ Execution Provider for ONNX Runtime for Windows <https://github.com/intel/onnxruntime/releases/>`_.
3131

32-
**OpenVINO™ Execution Provider for ONNX Runtime** Linux Wheels comes with pre-built libraries of OpenVINO™ version 2025.0.0 eliminating the need to install OpenVINO™ separately.
32+
**OpenVINO™ Execution Provider for ONNX Runtime** Linux Wheels comes with pre-built libraries of OpenVINO™ version 2025.1.0 eliminating the need to install OpenVINO™ separately.
3333

3434
For more details on build and installation please refer to `Build <https://onnxruntime.ai/docs/build/eps.html#openvino>`_.
3535

include/onnxruntime/core/providers/providers.h

+19
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,31 @@
22
// Licensed under the MIT License.
33

44
#pragma once
5+
#include <memory>
6+
7+
struct OrtSessionOptions;
8+
struct OrtLogger;
59

610
namespace onnxruntime {
711
class IExecutionProvider;
812

913
struct IExecutionProviderFactory {
1014
virtual ~IExecutionProviderFactory() = default;
1115
virtual std::unique_ptr<IExecutionProvider> CreateProvider() = 0;
16+
17+
/// <summary>
18+
/// Creates an IExecutionProvider instance. Enables initialization of an EP instance using session-level options
19+
/// such as session configs (string key/value pairs), graph optimization level, etc.
20+
///
21+
/// The default implementation ignores the arguments and calls the above CreateProvider() function,
22+
/// which does not take in any arguments.
23+
///
24+
/// This version of CreateProvider() is used by InferenceSession when registering EPs.
25+
/// </summary>
26+
/// <param name="session_options">Options for the session in which the IExecutionProvider is used</param>
27+
/// <param name="session_logger">Session logger that should be used by the IExecutionProvider.</param>
28+
/// <returns>An IExecutionProvider</returns>
29+
virtual std::unique_ptr<IExecutionProvider> CreateProvider(const OrtSessionOptions& session_options,
30+
const OrtLogger& session_logger);
1231
};
1332
} // namespace onnxruntime

0 commit comments

Comments
 (0)