Janas-LLM, NVMe 스트리밍으로 RAM 초과 MoE 모델 실행… llama.cpp 대비 생성 속도 대폭 향상

·2026.10.13 22:41

핵심 내용

Janas-LLM이 32GB RAM 노트북에서 48.4GB MoE 모델 생성 속도 24 tok/s를 달성했다.

자세히 보기

Janas-LLM은 순수 C로 작성된 실험적 추론 엔진으로, NVMe SSD에서 전문가(Expert) 가중치를 스트리밍하여 시스템 RAM보다 큰 Mixture-of-Experts(MoE) LLM을 실행할 수 있게 한다. Maurizio "camauri" Cammalleri가 개발했으며, 자주 사용되는 전문가를 메모리에 캐싱하고 나머지는 토큰 단위로 디스크에서 가져오는 방식이다. Linux와 Windows를 지원한다.

성능 벤치마크

Intel Core Ultra 9 185H, 32GB DDR5 RAM, 1TB NVMe SSD가 장착된 노트북에서 llama.cpp(build 2b18470, Vulkan 백엔드)와 비교 테스트를 진행했다. 시스템 RAM을 초과하는 Qwen3-Next-80B-A3B(48.4GB) 모델의 경우:

  • Janas-LLM: 62 tok/s(프롬프트) / 24 tok/s(생성)
  • llama.cpp: 16 tok/s(프롬프트) / 2.8 tok/s(생성)

다른 MoE 및 밀도 모델에서도 상당한 성능 향상을 보였다. Qwen3-Coder-Next는 22 tok/s vs 2.2 tok/s, Qwen3-30B-A3B는 32 tok/s vs 15 tok/s로 측정됐다. 다만 3비트 양자화된 Qwen3-30B-A3B의 경우 프롬프트 읽기 속도는 Janas가 느렸으나 생성 속도는 3배 빨랐다.

아키텍처 및 기능

핵심 라이브러리는 외부 의존성 없이 동작하며, 디스크 접근에 O_DIRECT를 사용하고 메모리를 공격적으로 관리한다. 주요 기능은 다음과 같다:

  • 초안 생성 지원: Qwen3.5/3.6/Next 및 Gemma 4 모델에 Multi-Token Prediction(MTP)을 구현했다. 모델에 따라 초안 생존율은 63%에서 89% 사이이다.
  • 서비스: 대화용 janas-chat, OpenAI 호환 HTTP API용 janas-server, MCP 서버 통합용 janas-mcp를 포함한다.
  • 리소스 관리: --cache <GiB>로 메모리 사용량을 제한하고 JANAS_GPU=0으로 GPU 가속을 비활성화할 수 있다.

한계 및 안정성

프로젝트는 초기 개발 단계로 API가 불안정하다. 시스템 리소스를 한계까지 사용하므로 스와핑이 발생하면 데스크톱 지연이나 GPU 드라이버 재설치가 일어날 수 있다. 브라우저 등 다른 애플리케이션이 실행 중일 때 성능이 약 75%로 저하되고 디스크 대기 시간이 5배 증가한다. 현재 특정 Intel 하드웨어에서만 검증되었으며 AMD 및 독립 GPU 구성은 테스트되지 않았다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.