该 PR 修复了 CPU 量化算子 QLinearSoftmax 处理空输入时返回成功却未创建输出张量的问题,避免下游 DequantizeLinear 因缺少输入而报错。关键改动是在空输入提前返回之前创建输出张量,使其行为与现有 CPU Softmax 一致,非空输入的计算逻辑保持不变。新增 CPU 回归测试覆盖 int8/uint8、opset 12/13、零尺寸维度,以及有无形状元数据和常量或运行时量化参数的组合;Windows x64 Release 下新增测试及相关测试集均通过。该改动提升了含空张量的量化模型在 CPU 上的兼容性,不涉及 WebGPU 内核修改;CUDA/WebGPU 相关测试在此次 CPU-only 构建中被跳过,因此无法据此确认 GPU 后端行为,且未提供性能基准数据。
该 PR 为 ONNX Runtime 的 WebGPU 插件新增 Dawn 升级工具,将精确版本解析、源码归档 SHA1 校验值计算、已审核依赖清单更新、SwiftShader 版本同步,以及按 CMake 顺序验证和刷新本地补丁整合为统一流程。工具默认仅试运行并生成 Markdown/JSON 报告和建议差异,支持显式应用与检查模式;遇到新增或归属不明确的依赖、需审核的补丁时,会阻止应用变更,同时保留运行时与开发依赖分类及独立打包的 DXC 版本,不处理 DXIL 迁移。Windows、Linux 和 macOS 插件打包流水线还会根据实际拉取的 Dawn 依赖生成独立组件清单,核验检出版本并进行组件治理扫描,相关脚本配有测试和使用文档。这些改动主要提升升级一致性、依赖可追溯性和跨平台发布的可靠性;现有信息未提供具体 Dawn 升级版本、运行时行为变化或性能测试,因此不能认定其直接改善 GPU 推理性能或扩展兼容范围。
该改动针对 ONNX Runtime WebGPU 后端中 NVIDIA 的稠密共享内存 FlashAttention 预填充路径,将头维度不超过 128 时的 Q·K 和 P·V 内层归约生成为直线式 WGSL,以减少循环开销。实现保留当前主线基于 FP32 qk_precision 的累加,以及归一化分数转换为 q_element_t 后参与 P·V 计算的行为,并沿用现有厂商与头维度缓存提示区分适用路径;外层循环、更大头维度、其他厂商、分页注意力及独立解码程序均不受影响。新增 FP16 高幅值回归测试以 65 个查询 token 和 64、128、256 三种头维度,覆盖不完整分块、归约展开、循环回退及分数溢出防护。PR 报告在启用 D3D12 Agility SDK 1.721.3-preview、使用 SM 6.10 时,完整模型预填充性能提升 10.87%–46.73%,但所给性能描述不完整,缺少具体模型、硬件及测量口径,不能据此推断其他配置下的收益。
该 PR 为 INT3 QMoE 建立可移植的打包格式、数值参考及版本化算子契约,重点是 P0 参考工具和 P1 主机侧校验,而非 GPU 执行内核。核心实现包括逐行、低位优先的 UINT8 打包与解包、尺寸运算溢出检查、规范填充校验,以及 INT3 offset-4 解码和考虑存储尺度舍入的确定性 RTN 量化;通用工具支持 1~8 位,但不代表 QMoE 开放 INT5/INT6。算子定义与 MoE 辅助逻辑的调整配合形状推断、格式验证和固定数值测试,并提供独立标量参考及标准 ONNX opset-18 解包/解码图,避免依赖草案中的 Pack/Unpack 算子。该改动为后续后端实现提供一致性基准,但未包含 P2 CUDA 内核,也未显示 WebGPU 实现变更;现有信息缺少版本迁移细则和性能基准,无法据此确认旧模型兼容范围或推理加速收益。
该 PR 修复 ONNX Runtime 图优化器中 MatMul 与 BatchNormalization 融合的正确性问题,避免中间 Reshape 或 Transpose 改变列与通道的对应关系后,仍按 BatchNormalization 通道参数缩放 MatMul 权重列,导致 Basic、Extended 和 All 优化级别产生错误结果。实现通过各节点推断出的输出形状逐步跟踪 MatMul 的列轴,仅在其保持对应 BatchNormalization 通道轴时允许融合,形状未知则保守跳过。测试新增了移动通道与保留通道的 Reshape 场景,并与未融合图比较;另将两个通道维度与 scale 长度不匹配的既有用例改为预期不融合,避免融合掩盖模型本身的无效输入。这是通用图优化逻辑调整,并非 WebGPU 内核改动;跳过融合可能减少部分图的性能优化机会,但提供的验证信息仅注明 Linux aarch64 CPU Release 环境,未给出完整测试结果、WebGPU 验证或性能数据。
该 PR 完整回退 #33241,撤销为 WebGPU 插件 EP 宿主引入的 Python 工厂选择调整,并恢复此前的 CMake 测试条件、Windows WebGPU 工作流、插件包冒烟测试及文档。预期部署方式是使用未启用 --use_webgpu 的普通 ORT 宿主,搭配单独构建的 WebGPU 插件 EP;GenAI 基准通过原生插件注册和设备选择 API 使用插件,不依赖被撤销的 Python 适配。回退移除了 Python 按 provider 名称选择的回退逻辑,但保留显式插件设备选择,同时删除在受支持的 ORT 1.24.4 宿主上失败的 provider 选项断言,将插件包测试恢复到原有范围。此次调整主要涉及插件集成路径与测试兼容性,未提供 WebGPU 算子执行或性能基准数据,无法据此认定 GPU 推理性能发生变化。
该 PR 通过升级 ONNX Runtime 使用的 Dawn 版本,旨在让 WebGPU 后端能够在 Intel GPU 上启用 subgroup matrix 能力。从修改路径看,改动集中在 cmake/deps.txt 中的依赖配置及 cgmanifests/webgpu/cgmanifest.webgpu.json 中的组件清单同步,未涉及推理算子或着色器实现的直接修改。该升级为利用 subgroup matrix 加速矩阵运算提供了底层支持,但不能据此认定现有模型会自动获得性能提升。当前信息未提供具体 Dawn 版本、适用的 Intel GPU 与驱动范围或性能测试结果,因此无法确认实际兼容性覆盖和加速幅度。
该 PR 为 ONNX Runtime 新增 CUDA contrib 算子 com.microsoft.HyperConnectionLowRankMix,将低秩超连接模块中的可选前块后混合、分支 RMS 归一化、降维投影、ScaledSiLU、升维投影、sigmoid、前混合及后混合注入门融合为单个节点,目标是减少逐块执行时的算子调度和内核启动开销。实现包含 CUDA 算子与内核注册、算子定义、文档及 C++/Python 测试,直接使用标准行主序 [K, N] 权重,不依赖软件网格屏障、线程块集群或进程级状态。描述中 batch=1、H200、bf16、S=1 下每 token 减少约 2.1 ms 的收益来自 PR 之外的研究实现,不能直接视为本次实现的性能结果,当前信息也不足以确定其实际内核数量及各形状下的加速效果。本次未涉及 WebGPU 实现,新增节点不能据此直接在 WebGPU 后端运行;现有模型还需显式使用该 contrib 算子,所列改动未体现自动融合图优化。
该 PR 为 PackedSparseAttentionIndexer 增加可选的逐请求状态输出 state_status,使调用方能够识别状态更新是否成功,以及是否因游标不一致或 state_capacity 溢出而被拒绝,解决此前拒绝操作仅保持状态不变并返回空选择、却无法被直接观测的问题。实现上在算子 schema 中新增索引为 8、类型为 int32、形状为 (batch_size) 的输出,将输出数量范围调整为 6–9,并同步修改 CUDA 调用链、类型与形状推断、文档及测试。该设备端状态张量允许 CUDA Graph 解码或验证循环在回放结束后由主机读取结果,无需在算子内部同步;但现有信息未提供性能测量,不能据此断言吞吐或延迟改善。新增输出为可选项,接口设计上保留了旧调用方式;WebGPU 侧也有适配改动,但缺少具体实现内容,无法确认其是否支持生成该状态输出,还是仅对新增接口进行限制或校验。
该 PR 主要修复 ONNX Runtime 内存 arena 的边界条件与 CUDA 配置生命周期问题,并优化现有 CUDA GEMV 和因果卷积内核,不引入模型专用算子或 schema 变更。分配器在 max_dead_bytes_per_chunk 为零时避免拆分大小恰好匹配的空闲块;CUDA 指针选项 API 支持设置和查询 default_memory_arena_cfg,将配置复制到提供程序自有存储,并对不支持的选项名返回无效参数错误。性能改动包括提高小 N GEMV 的 split-K 上限和向量化占用率目标,以及为满足条件的单请求 VarlenCausalConvWithState prefill 引入时间维分块,以提升并行度。测试补充覆盖 arena 边界、配置接口、GEMV 工作区大小、FP16/BF16 输出、重复 CUDA Graph 回放及因果卷积;这些改动未直接涉及 WebGPU,且未提供性能基准,无法量化加速收益,而此前被静默忽略的不支持选项现在会报错,调用方需注意这一行为变化。