Change8

b9859

Breaking Changes
📦 llama-cppView on GitHub →
1 breaking2 features🐛 1 fixes🔧 4 symbols

Summary

This release introduces the capability to load precompiled binary kernels for the OpenCL backend, resolving a dependency cycle in the process. It also provides numerous precompiled binaries across different operating systems and hardware configurations.

⚠️ Breaking Changes

  • The OpenCL backend now loads precompiled binary kernels from a library. This required adding `libdl.h` to break a cyclic dependency between `ggml-opencl` and `ggml-backend-dl` (which depends on backend libs). If you rely on specific kernel loading behavior, ensure the new library loading mechanism works correctly in your setup.

Migration Steps

  1. If you are using the OpenCL backend, be aware that kernel loading behavior has changed to use precompiled binary libraries.

✨ New Features

  • OpenCL backend now allows loading precompiled binary kernels from a library.
  • Added support for loading `gemm_moe_mxfp4_f32_ns`, `q8_0 gemm`, `q4_0 moe gemm`, `q4_1 moe gemm`, and `q4_k moe gemm` from the kernel library if available on OpenCL.

🐛 Bug Fixes

  • Fixed a cyclic dependency issue in the OpenCL backend by adding `libdl.h`.

Affected Symbols