You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 3fe5cbe
Browse filesBrowse the repository at this point in the historyBrowse files
Run WebGPU models in browser Wasm (#23938) (#23938)
Summary:
### 🎯 Why
The opt-in ExecuTorch Wasm build cannot run WebGPU-delegated models in a
browser. This change links the WebGPU backend into that build and
removes two op limits that large vision models hit.
### 🔧 What changed
- Link the WebGPU backend into the opt-in ExecuTorch Wasm build behind
EXECUTORCH_BUILD_WASM_WEBGPU (off by default).
- Initialize one process-wide WebGPU context through a new initWebGPU()
binding.
- Enable Asyncify, exceptions, and a growable heap with a 4 GB maximum
in that configuration only.
- Pin Emscripten 4.0.19, the first pinned version whose emdawnwebgpu
port has the instance-features API that the backend uses.
- Support batched aten.linear inputs by flattening leading dimensions.
- Fold large aten.where dispatches across two workgroup dimensions.
- Build the WebGPU Wasm configuration in pull.yml (build only, because
running a delegated model needs a browser with WebGPU).
- Add configuration tests that check the CMake option, link flags,
bindings, build script, and CI pin.
A build without EXECUTORCH_BUILD_WASM_WEBGPU is unchanged.
Reviewed By: psiddh
Differential Revision: D117468920
0 commit comments