llama.cpp Releases

[预发布 / 持续构建版本] b11509

llama.cpp 预发布构建修复 CUDA CCCL 版本守卫在大版本更替时误判的问题,改用打包整数比较,避免 argsort 在 CCCL 4.x 下静默回退到较慢路径。修复已在 RTX 4070 上验证通过。

预发布 / 持续构建版本:这是实验性构建,不是稳定版本。

CUDA: 修复主版本号进位时 CCCL 版本守卫失效的问题 (#29453) * CUDA: 修复主版本号进位时 CCCL 版本守卫失效的问题 该守卫此前独立地比较主版本号和次版本号组件: CCCL_MAJOR_VERSION >= 3 && CCCL_MINOR_VERSION >= 1 每当切出新的主版本系列时,次版本号会重置为 0,因此在 CCCL 4.x 上 该表达式求值为 4 >= 3 && 0 >= 1,即 false。STRIDED_ITERATOR_AVAILABLE 不再被定义,argsort 便静默回退到 init_offsets 路径。没有任何警告且构建仍然成功,所以这个 回归是一次悄无声息的性能损失,而非编译错误。 CCCL 已经将版本号以 MMMmmmpp 形式的单个打包整数暴露出来,其自身的版本头文件正是这样使用的: CCCL_VERSION = MAJOR * 1000000 + MINOR * 1000 + PATCH 因此 3.4.3 即 3004003,">= 3.1" 就是简单的 ">= 3001000"。只需 一次比较,不会再有组件运算出错的可能。 对照一个手写的 "version >= 3.1" 参考实现,在 2.9.9、 3.0.0、3.1.0、3.1.99、3.2.0、3.4.3、3.9.9、3.99.99、4.0.0、4.2.7 和 5.0.0 上进行了检查:没有分歧。旧守卫在 4.0.0 和 5.0.0 上结果不一致。 在 RTX 4070 (sm_89)、CUDA 13.4、CCCL 3.4.3 上验证: - cmake --build build --config Release: exit 0 - test-backend-ops test -o ARGSORT -b CUDA0: 98/98 passed, CUDA0 OK 请注意,回归测试通过本身并不能证明守卫仍然 被采纳,因为回退路径同样会通过测试。对实际的翻译单元进行预处理 可以确认编译进去的是跨步迭代器分支:counting_iterator 存在,init_offsets 不存在。 Signed-off-by: Heitor * Update ggml/src/ggml-cuda/argsort.cu * Apply suggestion from @ORippler --------- Signed-off-by: Heitor Co-authored-by: Oliver Simons

网站: - https://llama.app

证明(Attestations): - https://github.com/ggml-org/llama.cpp/attestations/53997029

macOS/iOS: - macOS Apple Silicon (arm64) - macOS Apple Silicon (arm64, 启用 KleidiAI) 已禁用 - macOS Intel (x64) - iOS XCFramework

Linux: - Ubuntu x64(CPU) - Ubuntu arm64(CPU) - Ubuntu s390x(CPU) - Ubuntu x64(Vulkan) - Ubuntu arm64(Vulkan) - Ubuntu x64(CUDA 12) - CUDA 12.8 库 - Ubuntu x64(CUDA 13) - CUDA 13.4 库 - Ubuntu arm64(CUDA 13) - CUDA 13.4 库 - Ubuntu x64(ROCm 10.0) - Ubuntu x64(OpenVINO) - Ubuntu x64(SYCL FP32) - Ubuntu x64(SYCL FP16) - Linux arm64(Snapdragon:CPU、Adreno GPU、Hexagon NPU) - 设置指南

Android: - Android arm64(CPU) - Android arm64(Snapdragon:CPU、Adreno GPU、Hexagon NPU) - 设置指南

Windows 平台: - Windows x64 版本(CPU) - Windows arm64 版本(CPU) - Windows arm64 版本(OpenCL Adreno) - Windows x64 版本(CUDA 12) - CUDA 12.4 DLL 文件 - Windows x64 版本(CUDA 13) - CUDA 13.4 DLL 文件 - Windows arm64 版本(CUDA 13) - CUDA 13.4 DLL 文件 - Windows x64 版本(Vulkan) - Windows arm64 版本(Vulkan) - Windows x64 版本(OpenVINO) - Windows x64 版本(SYCL) - Windows x64 版本(ROCm 10.0)

openEuler: - DISABLED - openEuler x86 架构 (310p) - openEuler x86 架构 (910b, ACL Graph) - openEuler aarch64 架构 (310p) - openEuler aarch64 架构 (910b, ACL Graph)

UI: - UI

原始出处

llama.cpp Releases

内容说明

原始发布及相关权利归来源方。

机器翻译 · 请以原文为准