MTP를 위한 패딩(padding) 및 다중 D2D 복사 제거 ([#24086](https://github.com/ggml-org/llama.c
요약
llama.cpp 프로젝트에서 MTP(Multi-Token Prediction)를 위한 패딩 제거 및 D2D 복사 최적화 작업이 진행되었습니다. ggml_gated_delta_net의 연산 파라미터 수정과 단일 strided ggml_cpy를 통한 캐시 복사 효율화를 포함합니다.
핵심 포인트
- MTP를 위한 패딩 해킹 제거 및 연산 효율성 개선
- 단일 strided ggml_cpy를 사용한 순환 캐시 복사 최적화
- ggml_gated_delta_net의 초기 순환 상태 처리 방식 수정
- macOS, Linux, Android 등 다양한 플랫폼용 빌드 업데이트
MTP를 위한 패딩(padding) 및 다중 D2D 복사 제거 (#24086)
- ggml_gated_delta_net이 초기 순환 상태(recurrent state) (D, 1, n_seqs)만 받도록 하고, state->ne[1]에서 추론하는 대신 스냅샷 개수 K를 연산(op) 파라미터로 전달하도록 수정합니다.
패딩 해킹(padding hack)을 제거하고, 생성된 모든 스냅샷을 단일 strided ggml_cpy를 사용하여 순환 캐시(recurrent cache)로 복사합니다.
-
모든 백엔드(backends)에 GDN 변경 사항을 적용합니다. 리뷰 의견을 반영합니다.
-
CI 빌드 오류를 수정합니다.
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) DISABLED
<strong>Android:</strong>
<strong>Windows:</strong>
<strong>Windows:</strong>
- Windows x64 (CPU)
- Windows arm64 (CPU)
- Windows x64 (CUDA 12) - CUDA 12.4 DLLs
- Windows x64 (CUDA 13) - CUDA 13.3 DLLs
- Windows x64 (Vulkan)
- Windows x64 (SYCL) DISABLED
- Windows x64 (HIP)
openEuler:
- DISABLED
- openEuler x86 (310p)
- openEuler x86 (910b, ACL Graph)
- openEuler aarch64 (310p)
- openEuler aarch64 (910b, ACL Graph)
UI:
AI 자동 생성 콘텐츠
본 콘텐츠는 llama.cpp Releases의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기