The latest b9957 release of llama.cpp brings several improvements to its server tools and build processes. Key updates include the introduction of a tools_io abstraction and enhancements to the edit tool, aimed at improving developer workflows. The release also fixes build issues and reorganizes utilities into class members, reflecting a focus on code structure and stability. These changes, while not revolutionary, enhance the usability and reliability of llama.cpp for developers across multiple platforms.
Read originalThe b10952 release of llama.cpp continues its trend of broadening platform compatibility, now supporting a wide array of systems including macOS, Linux, Windows, and openEuler. Notably, this update includes support for Vulkan and ROCm 10.0 on Ubuntu, as well as CUDA 12 and 13 on Windows, enhancing its utility for developers working across diverse hardware configurations. While KleidiAI support on macOS Apple Silicon is disabled, the release still marks a significant step in making llama.cpp a versatile tool for AI inference across different environments. This update doesn't introduce new models but solidifies llama.cpp's position as a flexible runtime option for developers beyond the NVIDIA ecosystem.
The latest release of llama.cpp, b10955, tackles a critical issue of heap corruption by disabling the ggml-cpu precompiled header and fixing CACHE_LINE_SIZE ambiguity. This update ensures consistent CACHE_LINE_SIZE values across C++ kernels and C work-buffer sizing code, preventing heap-buffer-overflow and subsequent crashes. By restoring the natural include order and removing the std::hardware_destructive_interference_size branch, the update makes the value deterministic and include-order independent. This release is a technical fix that stabilizes the runtime environment for developers using llama.cpp.