metal : concat 연산자에 대한 f16 및 bf16 지원 추가 ([#24724](https://github.com/ggml-org/ll
요약
llama.cpp의 Metal 백엔드에서 concat 연산자가 f16 및 bf16 텐서 타입을 지원하도록 업데이트되었습니다. 이를 통해 Apple Silicon 환경에서 다양한 데이터 타입에 대한 연산 효율성을 높였습니다.
핵심 포인트
- Metal 백엔드 concat 연산자에 f16 및 bf16 지원 추가
- 타입별 커널 특수화 및 파이프라인 게터 구현
- 디바이스의 bfloat16 지원 여부에 따른 동적 로직 업데이트
- macOS, iOS, Linux 등 다양한 플랫폼용 바이너리 배포
metal : concat 연산자에 대한 f16 및 bf16 지원 추가 (#24724)
- metal : concat 연산자에 대한 f16 및 bf16 지원 추가
기존의 f32 및 i32 지원에 더해, f16 및 bf16 텐서 (tensor) 타입을 지원하도록 Metal 백엔드 (backend) concat 연산자를 확장합니다.
- float, half, bfloat, int에 대한 특수화 (specializations)를 포함하여 타입 T에 대한 kernel_concat 템플릿화
- 타입별 파이프라인 게터 (pipeline getter) ggml_metal_library_get_pipeline_concat() 추가
- f16은 무조건 허용하고, 디바이스 (device)가 bfloat16을 지원하는 경우 bf16을 허용하도록 디바이스 지원 확인 로직 업데이트
- 타입에 따라 올바른 커널 (kernel) 특수화를 선택하도록 디스패치 (dispatch) 업데이트
Assisted-by: pi:llama.cpp/Qwen3.6-27B
- metal : concat 연산자를 f16, bf16, i8, i16 및 i64를 지원하도록 확장
Assisted-by: pi:llama.cpp/Qwen3.6-27B
macOS/iOS:
- macOS Apple Silicon (arm64)
- macOS Apple Silicon (arm64, KleidiAI 활성화됨) 비활성화됨
- macOS Intel (x64)
- iOS XCFramework
Linux:
Linux:
- 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)
Android:
Windows:
Windows:
- 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 (OpenVINO)
- Windows x64 (SYCL)
- 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가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기