]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commit
ggml-webgpu(shader): support conv2d kernels. (#21964)
authorChen Yuan <redacted>
Wed, 22 Apr 2026 03:18:57 +0000 (23:18 -0400)
committerGitHub <redacted>
Wed, 22 Apr 2026 03:18:57 +0000 (20:18 -0700)
commitca7f7b7b947842384cd8dda4a17a1868f1493a3e
tree01a67d42e43d7dee886e7807db63ee1c1d45363b
parent0dedb9ef7a71fcebfa6fb17e0d6e6abd6e893376
ggml-webgpu(shader): support conv2d kernels.  (#21964)

* ggml(webgpu): fix the busy-polls in Emscripten  in the waitAny after #20618, and remove the busy webgpu log

* Merge with upstream

* Fix GET_ROWS packed integer NaN when using f16 as memory buffer in shader quants

* Update Unary wgsl EXP and EXPM1 for f16 stability

* Fix GET_ROWS IQ4_XS strcut for NaN f16 canonicalization

* Fix numerical percision for unary sqrt when working with f16

* Fix NaN canonicalization for packed integers using f16

* Update err threshold for binary div ops when using f16

* backend: Keep one Dawn/WebGPU instance alive for the lifetime of the static backend

* clean: uncomment existing code logs

* clean: clean the unncessary debug info

* Refactor and generalize dequant helpers

* Remove deprecated quant structs

* Refactor shader defines to reduce repetition

* Remove error override for F16 type

* fix: fix the accidential removal of the proper initialization of ctx

* clean: clean legacy and format code

* fix: did not modify tests ops

* shader(conv2d): add conv2d shader kernels and pass f32 and f16 tests

* shader(conv2d): fix the out of bounds memory access in the weight indexing

* shader(conv2d): clean unused variables and optimize the computation

* merge: use the new entries function

* clean: address the formatting issues

* clean: address the warning issues

* clear: clean the shader editorconfig-checker issues

* clear: clean the shader editorconfig-checker with utf-8

---------

Co-authored-by: Jeremy J. Hartmann <redacted>
ggml/src/ggml-webgpu/ggml-webgpu-shader-lib.hpp
ggml/src/ggml-webgpu/ggml-webgpu.cpp
ggml/src/ggml-webgpu/wgsl-shaders/conv2d.wgsl [new file with mode: 0644]