llama.cpp Releases

[Pre-Release / Continuous Build] b11509

[Pre-Release / Continuous Build] CUDA: behebt CCCL-Versionsprüfung, die beim Wechsel der Major-Version fehlschlägt (#29453) * CUDA: behebt CCCL-Versionsprüfung, die beim Wechsel der Major-Version fehlschlägt Die Prüfung…

Pre-Release / Continuous Build: Dies ist ein experimenteller Build, keine stabile Veröffentlichung.

CUDA: behebt CCCL-Versionsprüfung, die beim Wechsel der Major-Version fehlschlägt (#29453) * CUDA: behebt CCCL-Versionsprüfung, die beim Wechsel der Major-Version fehlschlägt Die Prüfung verglich die Major- und Minor-Komponenten unabhängig voneinander: CCCL_MAJOR_VERSION >= 3 && CCCL_MINOR_VERSION >= 1 Minor wird auf 0 zurückgesetzt, sobald eine neue Major-Serie abgeschnitten wird, sodass bei CCCL 4.x dies als 4 >= 3 && 0 >= 1 ausgewertet wird, d. h. false. STRIDED_ITERATOR_AVAILABLE ist nicht mehr definiert und argsort fällt stillschweigend auf den init_offsets-Pfad zurück. Nichts warnt und der Build läuft weiterhin durch, daher ist die Regression ein stiller Performanceverlust statt eines Kompilierfehlers. CCCL stellt die Version bereits als einzelne gepackte Ganzzahl in MMMmmmpp-Form bereit, was auch ihr eigener Versionsheader verwendet: CCCL_VERSION = MAJOR * 1000000 + MINOR * 1000 + PATCH sodass 3.4.3 gleich 3004003 ist und ">= 3.1" ein schlichtes ">= 3001000" ist. Ein einziger Vergleich, ohne Komponenten-Arithmetik, die schiefgehen kann. Geprüft gegen eine handgeschriebene "version >= 3.1"-Referenz über 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 und 5.0.0: keine Abweichungen. Die alte Prüfung wich bei 4.0.0 und 5.0.0 ab. Verifiziert auf 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 bestanden, CUDA0 OK Zu beachten: Ein bestandener Regressionstest beweist nicht für sich allein, dass der neue Zweig tatsächlich genommen wird, da der Fallback-Pfad ebenfalls besteht. Die Präprozessierung der echten Übersetzungseinheit bestätigt, dass der Strided-Iterator-Zweig der einkompilierte ist: counting_iterator ist vorhanden, init_offsets nicht. Signed-off-by: Heitor * Update ggml/src/ggml-cuda/argsort.cu * Vorschlag von @ORippler übernommen --------- Signed-off-by: Heitor Co-authored-by: Oliver Simons

Website: - https://llama.app

Attestierungen: - https://github.com/ggml-org/llama.cpp/attestations/53997029

macOS/iOS: - macOS Apple Silicon (arm64) - macOS Apple Silicon (arm64, KleidiAI aktiviert) DISABLED - 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 Bibliotheken - Ubuntu x64 (CUDA 13) - CUDA 13.4 Bibliotheken - Ubuntu arm64 (CUDA 13) - CUDA 13.4 Bibliotheken - Ubuntu x64 (ROCm 10.0) - Ubuntu x64 (OpenVINO) - Ubuntu x64 (SYCL FP32) - Ubuntu x64 (SYCL FP16) - Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - Einrichtungsanleitung

Android: - Android arm64 (CPU) - Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - Einrichtungsanleitung

Windows: - Windows x64 (CPU) - Windows arm64 (CPU) - Windows arm64 (OpenCL Adreno) - Windows x64 (CUDA 12) - CUDA 12.4 DLLs - Windows x64 (CUDA 13) - CUDA 13.4 DLLs - Windows arm64 (CUDA 13) - CUDA 13.4 DLLs - Windows x64 (Vulkan) - Windows arm64 (Vulkan) - Windows x64 (OpenVINO) - Windows x64 (SYCL) - Windows x64 (ROCm 10.0)

openEuler: - DEAKTIVIERT - openEuler x86 (310p) - openEuler x86 (910b, ACL Graph) - openEuler aarch64 (310p) - openEuler aarch64 (910b, ACL Graph)

UI: - UI

Originalquelle

llama.cpp Releases

Hinweise zum Inhalt

Originalveröffentlichung und Rechte liegen bei der Quelle.

Maschinelle Übersetzung · Original beachten