Skip to content

[WebGPU] Upgrade Dawn to the latest - #32686

Merged
Edward Chen (edgchen1) merged 9 commits into
microsoft:mainfrom
mei1127:test917
Sep 24, 2026
Merged

Edward Chen (edgchen1) merged 9 commits into
microsoft:mainfrom
mei1127:test917

Conversation

@mei1127

@mei1127 May Mei (mei1127) commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

Description
This patch updates Dawn to the latest version.

Motivation and Context
D3D12 XMX support for ORT-EP-WebGPU Python wheels will be added in another patch after the upgrade of Dawn.

Copilot AI balanced review requested due to automatic review settings September 18, 2026 02:35
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@mei1127

May Mei (mei1127) commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor Author

/run bots

@mei1127

Copy link
Copy Markdown
Contributor Author

PTAL, thanks! Jiajia Qin (@qjia7) Jie Chen (@jchen10)

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.

🟡 Changes recommended

Update the governance manifest, correct the malformed patch hunk, and resolve the Windows DXIL packaging dependency.

Get a fresh assessment by requesting another Copilot review.

Pull request overview

Upgrades the bundled Dawn dependency for WebGPU and removes obsolete dxil.dll staging.

Changes:

  • Pins Dawn to v20260916.214021.
  • Refreshes the Dawn BinSkim patch.
  • Removes DXIL packaging from Windows Python, Node.js, Java, and WebGPU builds.
File summaries
File Summary
cmake/deps.txt Updates the Dawn archive and hash; the governance manifest also requires updating.
cmake/patches/dawn/dawn_binskim.patch Refreshes the BinSkim patch, but its hunk header is malformed.
cmake/onnxruntime_providers_webgpu.cmake Removes DXIL staging while downstream Windows packaging still expects the DLL.
cmake/onnxruntime_python.cmake Removes obsolete DXIL packaging.
cmake/onnxruntime_nodejs.cmake Removes obsolete Node.js DXIL packaging.
cmake/onnxruntime_java.cmake Removes obsolete Java DXIL packaging.
Review details

Suppressed comments (1)

cmake/deps.txt:62

  • Rolling the Dawn archive without updating cgmanifests/webgpu/cgmanifest.webgpu.json leaves the WebGPU Component Governance manifest on the old Dawn commit and dependency graph. The manifest's maintenance instructions require its root and Dawn-derived registrations to match cmake/deps.txt; otherwise NOTICE/component scans can report the wrong source (and the stale-pin validator cannot pass once its Dawn extraction is corrected). Please update/regenerate that manifest for v20260916.214021 in this change.
dawn;https://github.com/google/dawn/archive/refs/tags/v20260916.214021.zip;514e914f23a0787213c89eed879f74b5e275690d
  • Files reviewed: 6/6 changed files
  • Comments generated: 2
  • Review effort level: Lite (auto)

Note

Copilot is running an experiment and ran this review at Lite.


💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread cmake/onnxruntime_providers_webgpu.cmake
Comment thread cmake/patches/dawn/dawn_binskim.patch Outdated
@qjia7

Jiajia Qin (qjia7) commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

@mei1127

Copy link
Copy Markdown
Contributor Author

/run bots

@qjia7

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

@jchen10

Copy link
Copy Markdown
Contributor
  1. The delay-load test still copies dxil.dll
    onnxruntime/test/webgpu/delay_load/main.cc:66

  2. Component manifest not updated with the Dawn bump
    cgmanifests/webgpu/cgmanifest.webgpu.json:9 still pins ec7b457e5bb1fcec6f59733c4f3dd84d2f885a38
    The DXC entry at cgmanifests/webgpu/cgmanifest.webgpu.json#L29 still says the plugin redistributes dxil.dll

@mei1127

Copy link
Copy Markdown
Contributor Author

/run bots

@qjia7

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

@edgchen1

Copy link
Copy Markdown
Contributor

I think there are a few other places which still copy or refer to dxil.dll. e.g.:

Write-Host "Copying dxil.dll and dxcompiler.dll from $sourcePath to $targetPath"
Copy-Item -Path "$sourcePath\dxil.dll" -Destination $targetPath -Force

Write-Host "Copying dxil.dll and dxcompiler.dll from $sourcePath to $targetPath"
Copy-Item -Path "$sourcePath\dxil.dll" -Destination $targetPath -Force

git grep -n "dxil\.dll" shows a few hits.

do those need to be updated too?

@edgchen1

Copy link
Copy Markdown
Contributor

D3D12 XMX support for ORT-WebGPU Python wheels will be added in another patch after the upgrade of Dawn.

if this is referring to onnxruntime-webgpu, we have stopped publishing that wheel. we will just publish the onnxruntime-ep-webgpu plugin EP wheel going forward.

@mei1127

Copy link
Copy Markdown
Contributor Author

/run bots

@qjia7

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

@mei1127

Copy link
Copy Markdown
Contributor Author

I think there are a few other places which still copy or refer to dxil.dll. e.g.:

Write-Host "Copying dxil.dll and dxcompiler.dll from $sourcePath to $targetPath"
Copy-Item -Path "$sourcePath\dxil.dll" -Destination $targetPath -Force

Write-Host "Copying dxil.dll and dxcompiler.dll from $sourcePath to $targetPath"
Copy-Item -Path "$sourcePath\dxil.dll" -Destination $targetPath -Force

git grep -n "dxil\.dll" shows a few hits.

do those need to be updated too?

Yes, I have updated them. Thanks.

Comment thread cgmanifests/webgpu/cgmanifest.webgpu.json
@mei1127

Copy link
Copy Markdown
Contributor Author

/run bots

@qjia7

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

Comment thread cgmanifests/webgpu/cgmanifest.webgpu.json Outdated
@mei1127

Copy link
Copy Markdown
Contributor Author

/run bots

@qjia7

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

Comment thread cmake/patches/dawn/dawn_binskim.patch
@edgchen1

Copy link
Copy Markdown
Contributor

could you please also update this SwiftShader commit to match the one pinned by the new Dawn version?

# This SHA is lifted from Dawn's DEPS (third_party/swiftshader entry) at the
# Dawn commit pinned by ORT in cmake/deps.txt. To refresh on a Dawn bump:
# https://dawn.googlesource.com/dawn/+/<dawn-commit>/DEPS
# ---------------------------------------------------------------------------
FROM $BASEIMAGE AS swiftshader_builder
ARG SWIFTSHADER_COMMIT=b7b7fd22e5f28079b92412f47f6da4df43e4cd37

@mei1127

Copy link
Copy Markdown
Contributor Author

/run bots

@gyagp

Copy link
Copy Markdown
Contributor

Just curious, do we need to update these hashes manually now? I think we should maintain some script to make the upgrade easier.

@qjia7

Copy link
Copy Markdown
Contributor

The request was received. Approve workflow runs. Thanks.

@mei1127

Copy link
Copy Markdown
Contributor Author

Just curious, do we need to update these hashes manually now? I think we should maintain some script to make the upgrade easier

I agree, that would make things much easier.

@mei1127

May Mei (mei1127) commented Sep 22, 2026 •

Copy link
Copy Markdown
Contributor Author

PTAL again, thanks! Jiajia Qin (@qjia7) Edward Chen (@edgchen1)

@qjia7

Copy link
Copy Markdown
Contributor

PTAL again, thanks! Jiajia Qin (Jiajia Qin (@qjia7)) Edward Chen (Edward Chen (@edgchen1))

LGTM, please wait for Edward Chen (@edgchen1)'s review. Thanks.

@edgchen1
Edward Chen (edgchen1) enabled auto-merge (squash) September 24, 2026 17:04
@edgchen1
Edward Chen (edgchen1) merged commit fb8905b into microsoft:main Sep 24, 2026
161 of 162 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants