Skip to content

[BUILD] CUDA_QUANT_PREPROCESS off by default and Adjust CI#29687

Merged
tianleiwu merged 3 commits into
mainfrom
tlwu/20260713/adjust_build_options
Jul 17, 2026
Merged

[BUILD] CUDA_QUANT_PREPROCESS off by default and Adjust CI#29687
tianleiwu merged 3 commits into
mainfrom
tlwu/20260713/adjust_build_options

Conversation

@tianleiwu

Copy link
Copy Markdown
Contributor

This pull request updates the build and CI configuration for CUDA-related workflows and the main CMake options. The main changes are the addition of new CMake build flags to enable CUDA quantization preprocessing, improved formatting for build flags, and a change in the default for the CUDA quant preprocess build option. These updates improve clarity, make it easier to customize builds, and ensure that the CUDA quant preprocess module is only built when explicitly requested.

Build configuration changes:

  • Added the --cmake_extra_defines onnxruntime_BUILD_CUDA_QUANT_PREPROCESS=ON flag to the CUDA build jobs in .github/workflows/linux_cuda_ci.yml and .github/workflows/linux_cuda_plugin_ci.yml, enabling the CUDA quantization preprocessing module during CI builds. [1] [2] [3]
  • Added the --cmake_extra_defines onnxruntime_QUICK_BUILD=ON and --cmake_extra_defines onnxruntime_USE_FPA_INTB_GEMM=OFF flags to the CUDA no-cudnn build job for faster builds and to disable a specific GEMM implementation. [1] [2]

Formatting and maintainability:

  • Reformatted long extra_build_flags strings in workflow YAML files to use multi-line lists for improved readability and easier maintenance. [1] [2] [3]

CMake option default change:

  • Changed the default value of the onnxruntime_BUILD_CUDA_QUANT_PREPROCESS CMake option from ON to OFF in cmake/CMakeLists.txt, so the CUDA quantization preprocessing module is only built when explicitly enabled.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates ONNX Runtime’s CUDA build configuration to make the CUDA quantization preprocessing (weight-packing) module opt-in by default, while ensuring key CUDA CI workflows explicitly enable it and improving workflow flag readability.

Changes:

  • Switched onnxruntime_BUILD_CUDA_QUANT_PREPROCESS CMake default from ON to OFF.
  • Updated Linux CUDA GitHub Actions workflows to explicitly enable onnxruntime_BUILD_CUDA_QUANT_PREPROCESS=ON in CUDA builds.
  • Reformatted long extra_build_flags strings in CUDA workflows into multi-line folded scalars for maintainability, and added a couple of CI-oriented CMake defines in the no-cuDNN workflow.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
cmake/CMakeLists.txt Makes CUDA quant preprocess module opt-in by default via a CMake option default change.
.github/workflows/linux_cuda_ci.yml Enables CUDA quant preprocess in Linux CUDA build/test jobs and improves build flag readability.
.github/workflows/linux_cuda_plugin_ci.yml Enables CUDA quant preprocess in the CUDA EP-as-plugin CI build flags.
.github/workflows/linux_cuda_no_cudnn.yml Reformats build flags and adds CI-specific CMake defines for the no-cuDNN CUDA build.

Comment thread cmake/CMakeLists.txt Outdated
@tianleiwu
tianleiwu enabled auto-merge (squash) July 17, 2026 00:11
@tianleiwu
tianleiwu merged commit 1c89b86 into main Jul 17, 2026
86 of 89 checks passed
@tianleiwu
tianleiwu deleted the tlwu/20260713/adjust_build_options branch July 17, 2026 00:15
tianleiwu added a commit that referenced this pull request Jul 18, 2026
This cherry-picks the following commits for the release:

| Commit ID | PR Number | Commit Title |
|-----------|-----------|-------------|
| dd32f35 | #29590 | Fix libcudart.so.13 hard dependency in pybind
module breaking import on CPU-only Linux |
| cc44a4d | #29706 | [CUDA] Fix XQA GroupQueryAttention
cudaErrorInvalidValue on Blackwell (sm_120) |
| 23a7e9d | #29705 | [CUDA] Do not link nvrtc |
| ee93f83 | #29711 | [CUDA] Update cuda arch list for packages of
cuda 12.8 |
| fea45a3 | #29620 | [CUDA] Add cuDNN-free ArgMax/ArgMin/ReduceSum
and fix LogSoftmax on plugin EP |
| f05b218 | #29624 | Enable Spectre-mitigated MSVC libs for BinSkim
builds |
| 1c89b86 | #29687 | [BUILD] CUDA_QUANT_PREPROCESS off by default and
Adjust CI |
| 41bd391 | #29658 | [CUDA] Fix null allocator passed to plugin EP
kernel PrePack |
| 405fbea | #28896 | Add Windows ARM64 CUDA plugin package and align
CUDA metadata/artifact naming |
| 308f24c | #29622 | Enable fpA_intB GEMM in CUDA builds and add
configurable options |
| 16ebc1d | #29731 | [Build] Use GPU pool to unblock CI temporarily |
|5911a3a263| #29748 | Add OrtErrorCode::ORT_DEVICE_RESET |
|6217f73ec5 | #29663 | Fix plugin EP allocator deleter lifetime |

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: GitHub Copilot <copilot@example.com>
Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com>
Co-authored-by: Yen-Shi Wang <yenshiw@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants