Skip to content

Commit f7a5656

Browse files
authored
Merge pull request #814 from intel/sync_msft_17092025
Sync with Microsoft ONNX Runtime - 17/09/2025
2 parents c098113 + 42b1fbb commit f7a5656

File tree

306 files changed

+6754
-2267
lines changed

Some content is hidden

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

306 files changed

+6754
-2267
lines changed

.github/workflows/android.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@ jobs:
7171
run: |
7272
set -e -x
7373
BINARY_SIZE_THRESHOLD_ARGS=""
74-
echo "Binary size threshold in bytes: 1436672"
75-
BINARY_SIZE_THRESHOLD_ARGS="--threshold_size_in_bytes 1436672"
74+
echo "Binary size threshold in bytes: 1722565"
75+
BINARY_SIZE_THRESHOLD_ARGS="--threshold_size_in_bytes 1722565"
7676
7777
# Ensure ANDROID_NDK_HOME is available and get its real path
7878
if [ -z "$ANDROID_NDK_HOME" ]; then

.github/workflows/linux-wasm-ci-build-and-test-workflow.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ jobs:
120120
path: ${{ github.workspace }}/artifacts/wasm
121121

122122
- name: Test (Node.js) (simd + threads)
123-
# onnxruntime_test_all is currently only supported in Debug build because it requires exception, which is disabled in Release build.
123+
# unit tests are currently only supported in Debug builds because they require exceptions, which are disabled in Release builds.
124124
if: ${{ inputs.build_config == 'Debug' }}
125125
run: |
126126
python ./tools/ci_build/build.py \
@@ -130,14 +130,14 @@ jobs:
130130
working-directory: ${{ github.workspace }}
131131

132132
- name: Test (browser) (simd + threads)
133-
# onnxruntime_test_all is currently only supported in Debug build because it requires exception, which is disabled in Release build.
133+
# unit tests are currently only supported in Debug builds because they require exceptions, which are disabled in Release builds.
134134
if: ${{ inputs.build_config == 'Debug' }}
135135
run: |
136136
python ./tools/ci_build/build.py \
137137
${{ env.common_build_args }} \
138138
--build_dir ${{ github.workspace }}/build/wasm_inferencing \
139139
--wasm_run_tests_in_browser \
140-
--target onnxruntime_test_all \
140+
--targets onnxruntime_test_all onnxruntime_provider_test \
141141
--update --build --test
142142
working-directory: ${{ github.workspace }}
143143

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
name: Windows x64 QNN CI Pipeline
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- rel-*
8+
pull_request:
9+
branches:
10+
- main
11+
- rel-*
12+
workflow_dispatch:
13+
14+
concurrency:
15+
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.ref || github.sha }}
16+
cancel-in-progress: true
17+
18+
jobs:
19+
build_test_qnn_ep:
20+
name: Windows x64 QNN CI Pipeline (${{ matrix.QnnLibKind }})
21+
runs-on: ["self-hosted", "1ES.Pool=onnxruntime-github-vs2022-mms"]
22+
timeout-minutes: 120
23+
strategy:
24+
matrix:
25+
QnnLibKind: [shared_lib, static_lib]
26+
env:
27+
AZCOPY_AUTO_LOGIN_TYPE: MSI
28+
AZCOPY_MSI_CLIENT_ID: 63b63039-6328-442f-954b-5a64d124e5b4
29+
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
30+
ALLOW_RELEASED_ONNX_OPSET_ONLY: '1'
31+
32+
steps:
33+
- name: Checkout repository
34+
uses: actions/checkout@v5
35+
36+
- name: Setup Python
37+
uses: actions/setup-python@v5
38+
with:
39+
python-version: '3.12'
40+
architecture: x64
41+
42+
- name: Locate vcvarsall and Setup Env
43+
uses: ./.github/actions/locate-vcvarsall-and-setup-env
44+
with:
45+
architecture: x64
46+
47+
- name: Download QNN SDK
48+
working-directory: ${{ runner.temp }}
49+
run: |
50+
azcopy.exe cp --recursive https://lotusscus.blob.core.windows.net/models/qnnsdk/qnn-v2.38.0.250901 .
51+
dir
52+
shell: pwsh
53+
54+
- name: Set QNN_SDK_ROOT environment variable
55+
shell: pwsh
56+
run: |
57+
$qnn_sdk_path = Join-Path $env:RUNNER_TEMP "qnn-v2.38.0.250901"
58+
echo "QNN_SDK_ROOT=$qnn_sdk_path" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
59+
echo "QNN SDK Root: $qnn_sdk_path"
60+
dir $qnn_sdk_path
61+
62+
- name: Build and Test
63+
shell: cmd
64+
run: |
65+
python ${{ github.workspace }}\tools\ci_build\build.py --config RelWithDebInfo --build_dir ${{ runner.temp }}\build --cmake_generator "Visual Studio 17 2022" --build_java --build_shared_lib --use_qnn ${{ matrix.QnnLibKind }} --qnn_home %QNN_SDK_ROOT% --use_binskim_compliant_compile_flags --update --build --test --enable_onnx_tests --parallel
66+
67+
- name: Run ONNX Tests
68+
shell: cmd
69+
working-directory: ${{ runner.temp }}\build\RelWithDebInfo\RelWithDebInfo
70+
run: |
71+
.\onnx_test_runner -j 1 -e qnn -i "backend_path|%QNN_SDK_ROOT%\lib\x86_64-windows-msvc\QnnCpu.dll" ${{ github.workspace }}\cmake\external\onnx\onnx\backend\test\data\node
72+
73+
- name: Run float32 model tests
74+
shell: cmd
75+
working-directory: ${{ runner.temp }}\build\RelWithDebInfo\RelWithDebInfo
76+
run: |
77+
rem This step assumes the model data exists at C:\data\float32_models on the runner
78+
if exist C:\data\float32_models (
79+
.\onnx_test_runner -j 1 -e qnn -i "backend_path|%QNN_SDK_ROOT%\lib\x86_64-windows-msvc\QnnCpu.dll" C:\data\float32_models
80+
) else (
81+
echo "Skipping float32 model tests: C:\data\float32_models not found."
82+
)

.github/workflows/windows_webgpu.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,22 +127,23 @@ jobs:
127127
}
128128
Remove-Item "${{ github.workspace }}\RelWithDebInfo" -Include "*.obj" -Recurse
129129
130-
- name: Run tests (onnxruntime_test_all) with verbose logging
130+
- name: Run tests (onnxruntime_test_all, onnxruntime_provider_test) with verbose logging
131131
shell: pwsh
132132
run: |
133133
$env:ORT_UNIT_TEST_MAIN_LOG_LEVEL = "0"
134-
.\onnxruntime_test_all.exe 2>.\onnxruntime_test_all_stderr.log
134+
.\onnxruntime_test_all.exe 2> .\onnxruntime_test_stderr.log
135+
.\onnxruntime_provider_test.exe 2>> .\onnxruntime_test_stderr.log
135136
working-directory: ${{ github.workspace }}\RelWithDebInfo\RelWithDebInfo
136137

137138
- name: Check log file
138139
shell: cmd
139140
run: |
140-
dir ${{ github.workspace }}\RelWithDebInfo\RelWithDebInfo\onnxruntime_test_all_stderr.log
141+
dir ${{ github.workspace }}\RelWithDebInfo\RelWithDebInfo\onnxruntime_test_stderr.log
141142
142143
- name: Validate shader keys
143144
uses: ./.github/actions/webgpu-validate-shader-key
144145
with:
145-
log_file_path: ${{ github.workspace }}\RelWithDebInfo\RelWithDebInfo\onnxruntime_test_all_stderr.log
146+
log_file_path: ${{ github.workspace }}\RelWithDebInfo\RelWithDebInfo\onnxruntime_test_stderr.log
146147

147148
- name: Validate C# native delegates
148149
run: python tools\ValidateNativeDelegateAttributes.py

cmake/onnxruntime_mlas.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,8 @@ function(setup_mlas_source_for_windows)
109109
${MLAS_SRC_DIR}/eltwise_kernel_neon.cpp
110110
${MLAS_SRC_DIR}/eltwise_kernel_neon_fp16.cpp
111111
${MLAS_SRC_DIR}/sqnbitgemm_kernel_neon_int8_i8mm.cpp
112+
${MLAS_SRC_DIR}/sconv_kernel_neon.cpp
113+
${MLAS_SRC_DIR}/spool_kernel_neon.cpp
112114
)
113115

114116
set(mlas_platform_preprocess_srcs
@@ -431,6 +433,8 @@ else()
431433
${MLAS_SRC_DIR}/eltwise_kernel_neon.h
432434
${MLAS_SRC_DIR}/eltwise_kernel_neon.cpp
433435
${MLAS_SRC_DIR}/sqnbitgemm_kernel_neon_int8_i8mm.cpp
436+
${MLAS_SRC_DIR}/sconv_kernel_neon.cpp
437+
${MLAS_SRC_DIR}/spool_kernel_neon.cpp
434438
)
435439
if (onnxruntime_USE_KLEIDIAI)
436440
setup_kleidiai()

cmake/onnxruntime_test_pch.cmake

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
55
target_precompile_headers(onnxruntime_test_all PRIVATE
66
"${CMAKE_CURRENT_SOURCE_DIR}/test_pch.h"
77
)
8-
endif()
8+
target_precompile_headers(onnxruntime_provider_test PRIVATE
9+
"${CMAKE_CURRENT_SOURCE_DIR}/test_pch.h"
10+
)
11+
endif()
912

1013
# Exclude certain files that might conflict with PCH
1114
set(PCH_EXCLUDE_FILES

0 commit comments

Comments
 (0)