본문으로 건너뛰기

© 2026 Molayo

llama.cpp헤드라인2026. 04. 28. 09:14

b8943

요약

이 커밋은 `llama.cpp`의 공통(common) 모듈을 대대적으로 리팩토링하여 코드 구조와 의존성을 개선했습니다. 주요 변경 사항으로는 디버깅 관련 로직(`abort_on_nan`)을 전역 멤버 변수에서 `base_callback_data`로 이동시키고, Pimpl 패턴을 사용하여 헤더 파일의 의존성을 줄인 것입니다. 이러한 리팩토링은 컴파일 시간을 단축하고 모듈 간의 결합도를 낮추는 데 기여합니다.

핵심 포인트

  • 공통(common) 모듈의 구조적 개선 및 리팩토링을 통해 코드 품질 향상.
  • 디버깅 관련 플래그(`abort_on_nan`)를 템플릿 매개변수 대신 `base_callback_data` 멤버로 통합하여 LTO 호환성 문제 해결.
  • Pimpl 패턴 적용 및 private impl struct 사용으로 헤더 의존성을 줄여 전이적 의존성(transitive dependencies)을 감소시킴.
  • 다양한 아키텍처와 플랫폼(macOS, Linux, Android, Windows 등)에 대한 광범위한 빌드 지원 목록을 업데이트함.

common: llama-common 에서 누락된 export 수정 (#22340)
common: common/debug 를 리팩토링하여 abort_on_nan 을 base_callback_data 로 이동
bool abort_on_nan 을 템플릿 매개변수로 전달하는 것은 불필요하며 LTO 와 문제를 일으킵니다. 대신 base_callback_data 의 멤버로 두어야 합니다.
cont : common 정리 - debug.h 에서 pimpl 사용으로 헤더 의존성 감소
common_debug_cb_user_data 의 데이터 멤버 (std::regex, std::vector<uint8_t>) 를 debug.cpp 의 private impl struct 으로 이동시킴. 이를 통해 debug.h 를 포함하는 모든 번역 단위 (translation unit) 에 대한 common.h 와 from debug.h 의 include 를 제거하여 전이적 의존성 (transitive dependencies) 을 줄임.
Assisted-by: llama.cpp:local pi
Co-authored-by: Georgi Gerganov ggerganov@gmail.com
macOS/iOS:

  • macOS Apple Silicon (arm64)
  • macOS Apple Silicon (arm64, KleidiAI enabled)
  • macOS Intel (x64)
  • iOS XCFramework
    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:
  • Android arm64 (CPU)
    Windows:
  • 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)

AI 자동 생성 콘텐츠

본 콘텐츠는 llama.cpp Releases의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
2

댓글

0