Developer Tools

llama.cpp b9769 fixes Vulkan debug build linking error

Latest patch resolves a regression when enabling GPU debugging features.

Deep Dive

llama.cpp, the widely-used C/C++ implementation of LLaMA models, released version b9769 on June 23, 2024. The primary fix addresses a regression introduced after ggml-cpu was split into its own library. When building with -DGGML_VULKAN_CHECK_RESULTS=ON or -DGGML_VULKAN_RUN_TESTS=ON, the Vulkan backend attempted to call ggml_graph_compute_with_ctx() from ggml-cpu but failed to link the library, causing errors like LNK2019 on MSVC or undefined references on GCC/Clang. This patch ensures ggml-cpu is linked in those debug configurations, restoring the ability to validate GPU computations against CPU references.

Beyond the Vulkan fix, the release includes pre-built binaries for a wide range of platforms: macOS (Apple Silicon arm64 and Intel x64), Linux (x64/arm64 CPU, Vulkan, ROCm 7.2, OpenVINO, SYCL), Windows (x64 CPU, CUDA 12/13, Vulkan, OpenVINO, HIP), Android (arm64 CPU), and iOS (XCFramework). The openEuler Linux builds are currently disabled. This extensive support makes llama.cpp accessible for both local inference and development across diverse hardware setups.

Key Points
  • Fixes linking of ggml-cpu in Vulkan debug builds when GGML_VULKAN_CHECK_RESULTS or RUN_TESTS are enabled.
  • Resolves unresolved symbol errors on MSVC, GCC, and Clang after the ggml-cpu library split.
  • Release includes builds for macOS, Linux, Windows, Android, and iOS with multiple GPU backends (CUDA, Vulkan, ROCm, OpenCL).

Why It Matters

Ensures developers can reliably debug Vulkan GPU computations in llama.cpp, improving model accuracy verification.

📬 Get the top 10 AI stories daily