llama.cpp Releases

[Pré-publication / build continu] b11482

[Pré-publication / build continu] cuda : noyaux FWHT pour des largeurs de blocs supérieures à 512 (#29100) Le FWHT CUDA couvre les largeurs 64 à 512. Il exécute une ligne par warp et conserve N/32 valeurs par lane, si…

Pré-publication / build continu : il s'agit d'un build expérimental, pas d'une version stable.

cuda : noyaux FWHT pour des largeurs de blocs supérieures à 512 (#29100) Le FWHT CUDA couvre les largeurs 64 à 512. Il exécute une ligne par warp et conserve N/32 valeurs par lane, si bien que des blocs plus larges nécessitent plus de registres par lane que cette disposition ne le permet. fwht_cuda_block exécute une ligne par thread block avec 256 threads, donc chaque thread conserve N/256 valeurs. Les étapes inférieures à la largeur de warp utilisent toujours des shuffles, celles allant jusqu'à la largeur de bloc passent par la mémoire partagée, et le reste reste dans les registres. Mêmes conventions de butterfly et de signe que le noyau warp. Les largeurs 64 à 512 conservent le noyau warp. Les largeurs 1024 à 8192 utilisent le nouveau, pour les sources F32 et F16. ggml_cuda_op_mul_mat_use_fwht (le prédicat supports_op/dispatch partagé ajouté dans #29096) ne vérifie pas la largeur, donc il n'a pas eu besoin de modification ici : toute largeur qu'il admet et que ggml_cuda_op_fwht ne peut pas traiter bascule déjà correctement vers le chemin cuBLAS. Rebasing sur le master actuel avec le commit F16 de #29096 en dessous, puisque ceci dépend de la même infrastructure de templates F16 ; ce commit s'est appliqué proprement, le seul conflit se trouvait dans test-backend-ops.cpp où les ajouts de tests d'un commit intermédiaire sans rapport ont atterri à proximité de ce bloc. test-backend-ops sur une A10 (lambdalabs) : MUL_MAT 1297/1297, y compris tous les cas FWHT/Hadamard (18 existants, 4 nouveaux F32 larges, 4 nouveaux F16 larges, 2 nouveaux many-rows, 1 limite trop grande déplacée à 16384).

Site Web : - https://llama.app

Attestations : - https://github.com/ggml-org/llama.cpp/attestations/53784056

macOS/iOS : - macOS Apple Silicon (arm64) - macOS Apple Silicon (arm64, KleidiAI activé) DÉSACTIVÉ - macOS Intel (x64) - XCFramework iOS

Linux : - Ubuntu x64 (CPU) - Ubuntu arm64 (CPU) - Ubuntu s390x (CPU) - Ubuntu x64 (Vulkan) - Ubuntu arm64 (Vulkan) - Ubuntu x64 (CUDA 12) - Bibliothèques CUDA 12.8 - Ubuntu x64 (CUDA 13) - Bibliothèques CUDA 13.4 - Ubuntu arm64 (CUDA 13) - Bibliothèques CUDA 13.4 - Ubuntu x64 (ROCm 10.0) - Ubuntu x64 (OpenVINO) - Ubuntu x64 (SYCL FP32) - Ubuntu x64 (SYCL FP16) - Linux arm64 (Snapdragon : CPU, GPU Adreno, NPU Hexagon) - guide d'installation

Android : - Android arm64 (CPU) - Android arm64 (Snapdragon : CPU, GPU Adreno, NPU Hexagon) - guide d'installation

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

openEuler : - DÉSACTIVÉ - openEuler x86 (310p) - openEuler x86 (910b, ACL Graph) - openEuler aarch64 (310p) - openEuler aarch64 (910b, ACL Graph)

Interface : - Interface

Source originale

llama.cpp Releases

À propos du contenu

La publication originale et les droits appartiennent à la source.

Traduction automatique · Consultez l’original