Janas LLM: SSD 스트리밍을 통한 대규모 Mixture-of-Experts 모델 실행

개요

Janas-LLM은 전체 모델을 담을 RAM이 부족한 소비자용 하드웨어에서 대규모 Mixture-of-Experts(MoE) 언어 모델을 실행하기 위해 설계된 실험적 추론 엔진입니다. NVMe SSD에서 전문가(expert) 모델을 스트리밍하고 자주 액세스하는 가중치를 메모리에 캐싱함으로써, Janas-LLM은 유사한 하드웨어의 기존 CPU 기반 추론 방식보다 훨씬 빠른 토큰 생성 속도를 달성합니다.

핵심 아키텍처 및 성능

Janas-LLM은 외부 의존성 없이 순수 C 언어로 작성되었습니다. 이 엔진의 주요 혁신은 메모리 관리 전략에 있습니다. 전체 모델이 RAM에 상주해야 하는 대신, SSD를 메모리 계층 구조의 확장으로 취급합니다.

Intel Core Ultra 9 185H, 32GB RAM, NVMe SSD가 장착된 테스트 머신에서 Janas-LLM은 llama.cpp와 같은 기존 솔루션 대비 상당한 성능 향상을 보여주었습니다. 예를 들어, 시스템의 32GB RAM 용량을 초과하는 80B 파라미터 Qwen3-Next-80B-A3B 모델을 실행할 때, Janas-LLM은 쓰기 작업에서 초당 24토큰(tok/s)을 기록하여 llama.cpp의 2.8 tok/s와 대비되었습니다. 프롬프트 처리 속도 또한 Janas-LLM이 62 tok/s를 달성하여 16 tok/s를 기록한 llama.cpp보다 현저히 개선되었습니다.

실험적 성격 및 하드웨어 고려 사항

Janas-LLM은 현재 초기 실험 개발 단계에 있습니다. 프로젝트 문서에서는 이 엔진이 고속 디스크 읽기를 위해 O_DIRECT를 사용하고 사용 가능한 메모리를 전문가 캐시로 채우기 때문에 "기기에 무리를 줄 수 있다"고 명시적으로 경고합니다.

사용자가 고려해야 할 주요 사항은 다음과 같습니다:

  • 시스템 안정성: 엔진이 메모리를 공격적으로 관리하기 때문에 운영 체제가 스왑(swap) 상태로 전환되어 데스크톱 응답이 느려질 수 있습니다. 사용자에 따르면 엔진이 GPU가 처리할 수 있는 것보다 더 많은 데이터를 로드하려고 할 때 GPU 드라이버 재설정이 발생할 수 있다고 보고되었습니다.
  • SSD 마모: 고속 디스크 스트리밍에 대한 의존성으로 인해 지속적이고 대량의 읽기 작업으로 인한 SSD 마모 가능성에 대한 커뮤니티 내 논의가 있었습니다.
  • 하드웨어 가변성: 성능은 특정 기기 구성에 크게 의존합니다. 이 프로젝트에는 로컬 하드웨어 성능을 측정하기 위한 janas-bench 도구가 포함되어 있으며, 작성자는 더 다양한 하드웨어에 최적화할 수 있도록 사용자들이 측정 결과를 공유할 것을 권장합니다.

커뮤니티 의견

이 프로젝트를 둘러싼 논의는 제한된 하드웨어에서 로컬 추론을 최적화하려는 오픈 소스 AI 커뮤니티의 광범위한 추세를 반영합니다. 일부 커뮤니티 구성원들은 다른 프로젝트에서도 유사한 기술이 탐구되었다고 언급했지만, 다른 이들은 SSD 스트리밍 추론 엔진의 경쟁적인 구현체가 여러 개 존재하는 것의 중요성을 강조했습니다.

"요즘 SSD에서 전문가 모델을 스트리밍하는 프로젝트가 정말 많습니다. 이제 필요한 것은 이 모든 프로젝트에 대한 가이드이며, 누군가 각 프로젝트의 장점만을 모아 하나의 통합된 슈퍼 프로젝트로 만드는 것입니다." — Hacker News User

일부 사용자는 웹 서핑이나 코딩과 같은 일상적인 작업을 수행하는 동안 이러한 도구를 실용적으로 사용하는 것에 대해 우려를 표하며, 과도한 디스크 및 메모리 사용이 전반적인 시스템 성능에 영향을 줄 수 있다고 지적했습니다. 다른 이들은 NVMe 스토리지가 통합된 전용 가속기와 같은 특수 하드웨어의 미래 잠재력을 언급했습니다. 이러한 하드웨어는 이론적으로 현재 소비자용 아키텍처에 내재된 병목 현상 없이 모델 가중치를 컴퓨팅 유닛에 직접 공급하는 데 필요한 대역폭을 제공할 수 있습니다.

Sources

관련