Masashi Yoshimura and Georgi Gerganov
cabd684e45
ggml-webgpu: add support for f16 repeat (llama/26307)
2026-08-04 13:37:47 +03:00
Masashi Yoshimura and Georgi Gerganov
f97417517f
ggml-webgpu: improve flash_attn_vec for quantized KV at long contexts (llama/25956)
...
* improve fa of quantized kv cache
* Fix some bugs and some comments.
* fix v type check and some comments
* Fix build error caused by rebasing
* editorconfig checking pass
2026-08-04 13:37:47 +03:00
Masashi Yoshimura and Georgi Gerganov
4b914096e8
ggml-webgpu: tune subgroup split (d_split) in flash_attn_vec (llama/25418)
2026-07-10 13:06:42 +03:00
Masashi Yoshimura and Georgi Gerganov
b313fd3ce8
ggml-webgpu: add support for NVFP4 (llama/25143)
2026-07-10 13:06:42 +03:00
Masashi Yoshimura and Georgi Gerganov
2955e84ec3
ggml-webgpu: improve MTP inference by using mat-vec path for small batches (llama/24811)
...
* ggml-webgpu: improve small batches decoding
* Add barrier to the NUM_COLS loop in mul-mat-vec
2026-06-26 16:03:57 +03:00
Masashi Yoshimura and Georgi Gerganov
75b90fb0ea
ggml-webgpu: add adapter toggles for F16 on Vulkan + NVIDIA
2026-06-26 16:03:57 +03:00
Masashi Yoshimura and Georgi Gerganov
3e0b917514
ggml-webgpu: improve i-quants mul_mat performance and speed up prefill (llama/24530)
...
* Improve prefill speeds for i-quants
* Fix #if defined() usage in preprocessor guards.
2026-06-19 12:53:43 +03:00
Masashi Yoshimura and Georgi Gerganov
aa42b48312
ggml-webgpu: Improve prefill speeds for k-quants + refactor matmul for Q4/Q5/Q8 and k-quants (llama/24225)
...
* ggml-webgpu: Improve prefill speeds + refactor matmul for quants
* Fixes for editroconfig checker
2026-06-15 10:33:53 +03:00
Masashi Yoshimura and Georgi Gerganov
db2a39507c
revert to using global_invocation_id for cpy shader (llama/23955)
2026-06-08 14:36:36 +03:00
Masashi Yoshimura and Georgi Gerganov
a52bd385d6
ggml-webgpu: Fix how to dispatch WG to some ops (llama/23750)
2026-05-29 09:47:30 +03:00
Masashi Yoshimura and Georgi Gerganov
00a5110b19
ggml-webgpu: Add MMVQ path for Q4/Q8/Q2_K/Q4_K and clean up legacy MUL_MAT pipeline (llama/23594)
...
* ggml-webgpu: Add MMVQ path for Q4/Q8/Q2_K/Q4_K
* Fix to editorconfig checking pass
* Remove mul-mat-legacy pipeline
* Fix to use vendor name as is and add dot_product/vendor to shader_lib_ctx
2026-05-29 09:47:30 +03:00
Masashi Yoshimura and Georgi Gerganov
1cbbd0b6d0
flush the gpu profile timestamp before the queryset is overflowed (llama/22995)
2026-05-14 21:26:48 +03:00
Masashi Yoshimura and Georgi Gerganov
e8a7cd314f
ggml-webgpu: Enables running gpt-oss-20b (llama/22906)
...
* Enable to run gpt-oss-20b and refactor mulmat-q
* disable test-backend-ops in ubuntu-24-webgpu
2026-05-14 21:26:48 +03:00
9623c1203b
ggml-webgpu: Fix vectorized handling in mul-mat and mul-mat-id (llama/22578)
...
* Fix vectorized condition of mul-mat-fast pipeline and add vectorized variant to mul-mat-id
* Apply suggestion from @CISC
Co-authored-by: Sigbjørn Skjæret <sigbjorn.skjaeret@scala.com >
---------
Co-authored-by: Sigbjørn Skjæret <sigbjorn.skjaeret@scala.com >
2026-05-02 15:02:42 +03:00
Masashi Yoshimura and Georgi Gerganov
b34a9f3d83
ggml-webgpu: Improve performance of mat-vec and mat-mat for MUL_MAT_ID (llama/22464)
...
* Add mat-vec fast path of MUL_MAT_ID.
* Add shared accumulation vec logic and the other types supports.
* Add i-quant mat-mat for MUL_MAT_ID and fix some parts
* Remove n_experts from shader_lib_context.
2026-05-01 13:07:35 +03:00
Masashi Yoshimura and Georgi Gerganov
0fbe4c4ca7
ggml-webgpu: Add fused RMS_NORM + MUL (llama/21983)
...
* fused rms_norm_mul + mul
* Add GGML_WEBGPU_DISABLE_FUSION for being able to disable kernel fusion.
* Decouple num_fused_ops from webgpu_context; misc cleanup
* Fix eps handling and remove disable_fusion.
* Fix not to use c++20 initializers.
2026-04-30 11:29:16 +03:00
Masashi Yoshimura and Georgi Gerganov
2e5eb6e951
ggml-webgpu: reset CPU/GPU profiling time when freeing context (llama/22050)
...
* Reset the CPU/GPU profiling time when freeing context.
* move GPU profiling time from global context to webgpu_context.
2026-04-30 11:29:15 +03:00
Masashi Yoshimura and Georgi Gerganov
36b7bb3d95
Remove extra conditional check on debug mode. (llama/21798)
2026-04-30 11:29:07 +03:00
9cbc4b3acb
ggml-webgpu: Add the support of MUL_MAT_ID (llama/21147)
...
* Add mul_mat_id support to WebGPU
* Apply suggestion from @reeselevine
---------
Co-authored-by: Reese Levine <reeselevine1@gmail.com >
2026-04-30 11:29:01 +03:00
Masashi Yoshimura and Georgi Gerganov
3d004fbf0a
ggml-webgpu: Update the RMS_NORM preprocessor and add L2_NORM (llama/20665)
...
* Update the preprocessor of RMS_NORM and add L2_NORM.
* Fix the name of rms_norm to row_norm.
2026-03-29 15:04:36 +03:00
Masashi Yoshimura and Georgi Gerganov
12015a2174
ggml-webgpu: Add supports for DIAG and TRI (llama/20664)
...
* Add supports for DIAG and TRI.
* Remove extra ttype and add a comment for TRI op.
2026-03-29 15:04:36 +03:00
Masashi Yoshimura and Georgi Gerganov
5267523829
ggml-webgpu: Add supports for GGML_OP_REPEAT (llama/20230)
...
* Add GGML_OP_REPEAT to webgpu backend.
* Add i16 support for GGML_OP_REPEAT.
2026-03-16 13:10:15 +02:00
Masashi Yoshimura and Georgi Gerganov
8d78d40946
Add concat op to webgpu. (llama/20068)
2026-03-16 13:10:15 +02:00
Masashi Yoshimura and Georgi Gerganov
de686fafad
ggml-webgpu: Support non-contiguous src0 and overlapping src0/src1 in binary ops (llama/19850)
...
* ggml-webgpu: Add binary op support for overlapping and non-contiguous.
* Add newline to binary.wgsl
* Append the test of binary op for src overlapping to test_bin_bcast.
* Remove unnecessary newline.
2026-03-16 13:10:15 +02:00
Masashi Yoshimura and Georgi Gerganov
0158795ebc
ggml-webgpu: Add unary op (SQR, SQRT, SIN, COS) support. (llama/19700)
...
* ggml-webgpu: Add unary op (SQR, SQRT, SIN, COS) support.
* Fix to cast the src value to f32 before sin/cos computing.
2026-02-27 20:57:58 +02:00
Masashi Yoshimura and Georgi Gerganov
a71127dfd8
ggml-webgpu: Fix GGML_MEM_ALIGN to 8 for emscripten. (llama/18628)
...
* Fix GGML_MEM_ALIGN to 8 for emscripten.
* Add a comment explaining the need for GGML_MEM_ALIGN == 8 in 64-bit wasm with emscripten
2026-01-14 09:11:59 +02:00