The b10988 release of llama.cpp introduces several enhancements to its OpenCL capabilities. Key updates include the selection of MoE expert matmul by batch size for speculative decoding and improvements in handling padded MoE activation slots. These changes aim to optimize performance and efficiency across multiple platforms, such as macOS, Linux, and Windows. The release does not feature new models but focuses on refining existing functionalities, making it a more versatile tool for developers.
Read originalThis release patches a critical remote code execution vulnerability in the llama.cpp server that allowed unauthenticated attackers to hijack memory via dangling pointers. The flaw stemmed from caching compute graphs that referenced freed buffers, enabling heap corruption and arbitrary code execution through subsequent tensor commands. By discarding cached graphs when buffers are freed, the fix forces a safe fallback to full recomputation without changing the API. This is a vital security update for anyone running the llama.cpp server remotely, closing a direct path to system compromise.
A copy-paste error in llama.cpp was corrupting matrix transpositions on Spacemit hardware, causing significant data corruption for int16 operations. This release patches the specific RVV instruction call to ensure correct computation on these RISC-V based chips. While niche, it prevents silent inference failures for users relying on this specific accelerator architecture. The update also ships binaries for CUDA 13 and ROCm 10.0, keeping the runtime current with latest driver ecosystems.