]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commit
ggml-webgpu: enable FLASH_ATTN_EXT on browser without subgroup matrix (llama/22199)
authorZheyuan Chen <redacted>
Fri, 24 Apr 2026 17:39:09 +0000 (10:39 -0700)
committerGeorgi Gerganov <redacted>
Thu, 30 Apr 2026 08:29:18 +0000 (11:29 +0300)
commit35d679a4f8f51833e6d25b0f748632ba888d3d7b
tree2e3fbe6605b559ac53a8b78dd391cfe9aded2635
parent6576c4da90f5a8b1662697a2b73442276657677c
ggml-webgpu: enable FLASH_ATTN_EXT on browser without subgroup matrix (llama/22199)

* ggml-webgpu: add tile flash attention fallback

* ggml-webgpu: add new fields and discard usage of mnk for tile version

* ggml-webgpu: modify the vec path to discard the mnk parameter

* ggml-webgpu: enable flash attention vec and tile version for broswer

* ggml-webgpu: stagging KV for flash attention tile version

* formatting

* turn on subgroup uniformity check

* remove Q_TILE as it is always 1 for vec path

* make row_max and exp_sum to local register

* make different bindings with same underlying buffer to have the same usage flags

* move path selection into the shader library and have the host consume a single flash-attn decision object.

* turn off skip_validation and address buffer overlapping when nwg==1

* formatting

* merge binding when kv overlap
ggml/src/ggml-webgpu/ggml-webgpu-shader-lib.hpp
ggml/src/ggml-webgpu/ggml-webgpu.cpp
ggml/src/ggml-webgpu/wgsl-shaders/flash_attn.wgsl
ggml/src/ggml-webgpu/wgsl-shaders/flash_attn_tile.wgsl [new file with mode: 0644]
ggml/src/ggml-webgpu/wgsl-shaders/flash_attn_vec_blk.wgsl
ggml/src/ggml-webgpu/wgsl-shaders/flash_attn_vec_split.wgsl