model: buft probe 수정을 위해 ffn_latent를 MUL_MAT으로 태깅 ([#23664](https://github.com/g
요약
llama.cpp에서 buft probe 오류를 해결하기 위해 ffn_latent를 MUL_MAT으로 태깅하는 업데이트가 진행되었습니다. 이를 통해 Nemotron 3 Super 120B 모델의 추론 속도가 64.9 t/s에서 103.22 t/s로 크게 개선되었습니다.
핵심 포인트
- ffn_latent 연산을 MUL에서 MUL_MAT으로 정확히 태깅
- buft probe의 잘못된 연산 판정으로 인한 GPU 가중치 이탈 문제 해결
- Nemotron 3 Super 120B 모델에서 추론 성능 약 60% 향상
model: buft probe 수정을 위해 ffn_latent를 MUL_MAT으로 태깅 (#23664)
ffn_latent_down/up는 LLM_TENSOR_INFOS에서 GGML_OP_MUL로 선언되어 있지만, nemotron-h는 이를 ggml_mul_mat을 통해 전달합니다. 로더의 buft probe는 백엔드에 선언된 연산(op)을 문의하며, 이 과정에서 q8_0 가중치에 대해 요소별(elementwise) MUL 연산을 테스트했습니다. 이전에는 이것이 무조건 true를 반환하여 운 좋게 가중치가 GPU에 남아 있었습니다. 하지만 supports_op가 실제 정보를 전달하게 되면서, probe는 no 응답을 받았고 로더는 가중치와 해당 matmul을 CPU로 밀어내어 그래프를 분리했습니다. 이를 MUL_MAT으로 태깅하는 것은 실제 질문을 던지는 것이며, 수학적 계산은 변경되지 않습니다.
Nemotron 3 Super 120B Q5_K_M에서 검증 완료: 64.9 t/s에서 다시 103.22 t/s로 복구되었습니다.
macOS/iOS:
- macOS Apple Silicon (arm64)
- macOS Apple Silicon (arm64, KleidiAI 활성화)
- macOS Intel (x64)
- iOS XCFramework
Linux:
<strong>Linux:</strong>
- Ubuntu x64 (CPU)
- Ubuntu arm64 (CPU)
- Ubuntu s390x (CPU)
- Ubuntu x64 (Vulkan)
- Ubuntu arm64 (Vulkan)
- Ubuntu x64 (ROCm 7.2)
- Ubuntu x64 (OpenVINO)
- Ubuntu x64 (SYCL FP32)
- Ubuntu x64 (SYCL FP16)
<strong>Android:</strong>
<strong>Windows:</strong>
<strong class="text-lg font-bold">Windows:</strong>
- Windows x64 (CPU)
- Windows arm64 (CPU)
- Windows x64 (CUDA 12) - CUDA 12.4 DLLs
- Windows x64 (CUDA 13) - CUDA 13.1 DLLs
- Windows x64 (Vulkan)
- Windows x64 (SYCL)
- Windows x64 (HIP)
openEuler:
- openEuler x86 (310p)
- openEuler x86 (910b, ACL Graph)
- openEuler aarch64 (310p)
- openEuler aarch64 (910b, ACL Graph)
UI:
AI 자동 생성 콘텐츠
본 콘텐츠는 llama.cpp Releases의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기