llama.cpp/ggml/src
Ervin Áron Tasnádi a979ca22db
ggml: adds CONV_2D op and direct GEMM Vulkan implementation (#14316)
* ggml/ggml-vulkan/test-backend-ops: adds CONV_2D for Vulkan

* ggml-vulkan: adds f32 scalar shader to compute 2D convolution directly
with gemm (no need for im2col),

* test-backend-ops: adds test_case_ref to check the validity/performance of ops
against reference implementations having different graphs, adds tests

* * Performance fixes: minimized branch divergence, uses collectives to
  eliminate redundant calculation, macros removed.

* Kernel shared memory size check

* Updates test-backend-ops to support graphs for performance
  measurement.

* * Apple/Win32 compile errors fixed

* Subgroup size used to determine tile size -> fixes llvmpipe errors.

* Collectives disabled by default.

* Intel support is disabled as the performance is poor.

* Conv2d enabled for Intel with disabled collectives, disabled for Apple

* test-backend-ops modifications are reverted

* Trailing spaces and missing override fixed.

* Triggering pipeline relaunch.

* Code formatted with .clang-format.
2025-07-19 21:59:08 +02:00
..
ggml-blas cmake : Fix broken CMake error messages (ggml/1252) 2025-06-01 13:43:57 +03:00
ggml-cann ggml : add build-time message to remind about ggml_set_rows (#14661) 2025-07-13 10:36:33 +03:00
ggml-cpu ggml : add asserts (#14720) 2025-07-16 14:43:32 +03:00
ggml-cuda cuda : Fix Gemma3n not executed as CUDA_GRAPH on NVGPUs (#14741) 2025-07-18 04:35:32 -07:00
ggml-hip HIP: disable rocwmma on gfx12 by default until rocm 7.0 (#14202) 2025-06-16 13:47:38 +02:00
ggml-metal metal : fuse add, mul + add tests (#14596) 2025-07-18 20:37:26 +03:00
ggml-musa musa: enable fp16 mma (all) and cublas on qy2 (#13842) 2025-06-26 12:11:59 +08:00
ggml-opencl ggml : add build-time message to remind about ggml_set_rows (#14661) 2025-07-13 10:36:33 +03:00
ggml-rpc rpc : nicer error messages for RPC server crash (#14076) 2025-06-10 09:41:01 +03:00
ggml-sycl use max work group size for device to replace the magic number (#14732) 2025-07-18 10:23:14 +08:00
ggml-vulkan ggml: adds CONV_2D op and direct GEMM Vulkan implementation (#14316) 2025-07-19 21:59:08 +02:00
ggml-webgpu ggml: Add initial WebGPU backend (#14521) 2025-07-16 18:18:51 +03:00
CMakeLists.txt ggml: Add initial WebGPU backend (#14521) 2025-07-16 18:18:51 +03:00
ggml-alloc.c metal : fuse add, mul + add tests (#14596) 2025-07-18 20:37:26 +03:00
ggml-backend-impl.h ggml : upgrade init_tensor API to return a ggml_status (#11854) 2025-02-28 14:41:47 +01:00
ggml-backend-reg.cpp ggml: Add initial WebGPU backend (#14521) 2025-07-16 18:18:51 +03:00
ggml-backend.cpp metal : fuse add, mul + add tests (#14596) 2025-07-18 20:37:26 +03:00
ggml-common.h ggml-cpu : split arch-specific implementations (#13892) 2025-06-09 16:47:13 +02:00
ggml-impl.h metal : fuse add, mul + add tests (#14596) 2025-07-18 20:37:26 +03:00
ggml-opt.cpp mnist: fix segmentation fault (ggml/1227) 2025-05-19 13:29:56 +03:00
ggml-quants.c ggml-quants : rename best_mad to best_error (ggml/1283) 2025-07-01 11:06:39 +03:00
ggml-quants.h ggml : build backends as libraries (#10256) 2024-11-14 18:04:35 +01:00
ggml-threading.cpp ggml : build backends as libraries (#10256) 2024-11-14 18:04:35 +01:00
ggml-threading.h remove CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS (#10797) 2024-12-12 19:02:49 +01:00
ggml.c ggml : add ggml_scale_bias (#14417) 2025-07-09 18:16:12 +02:00
ggml.cpp ggml : Print backtrace on uncaught C++ exceptions (ggml/1232) 2025-06-01 13:43:57 +03:00
gguf.cpp ggml : prevent integer overflow in gguf tensor size calculation (#14595) 2025-07-09 14:33:53 +02:00