Hypura – A storage-tier-aware LLM inference scheduler for Apple Silicon
TL;DR Highlight
A Rust-based open-source project that intelligently distributes LLM models across GPU, RAM, and NVMe when they exceed your Mac's physical memory, enabling models that crash llama.cpp with OOM errors to actually run.
Who Should Read
Developers with Apple Silicon Macs (MacBook Pro, Mac Studio, Mac Mini, etc.) who gave up running local LLMs due to memory constraints — especially ML engineers and AI researchers who want to experiment with 70B+ models on 32GB or less.
Core Mechanics
- The project implements smart tiered memory placement: model layers that are frequently accessed stay in GPU unified memory, less-used layers fall back to system RAM, and rarely-used layers spill to NVMe SSD.
- The tiering is dynamic — as different parts of the model are activated during inference, layers migrate between tiers based on access frequency and available memory.
- In benchmarks on a 32GB M3 Max, the project runs a 70B quantized model at 3-5 tokens/second — slow but functional, where llama.cpp fails entirely due to OOM.
- NVMe bandwidth on Apple Silicon (especially M-series Pro/Max/Ultra) is fast enough to make SSD spillover practical — the bandwidth isn't comparable to RAM but is sufficient for less-active layers.
- The project is in early stages and lacks some llama.cpp ecosystem integrations (certain quantization formats, sampling methods), but the core functionality works.
Evidence
- Benchmark videos showing 70B models running on 32GB MacBook Pros generated significant excitement — many developers had assumed this was simply impossible.
- Commenters with NVMe bandwidth knowledge validated the technical approach: Apple Silicon's NVMe is fast enough that SSD spillover is viable in ways it wouldn't be on typical PC SSDs.
- Some skepticism about real-world usefulness: 3-5 tokens/second is too slow for interactive use but might work for batch processing or offline generation tasks.
- Rust implementation was specifically called out as a smart choice for this use case — the memory management precision and performance characteristics align well with the problem.
How to Apply
- If you're on an Apple Silicon Mac with 32GB or less and want to run 70B models, this is currently the best option — try it for offline batch generation tasks where speed is less critical.
- Start with a Q4 quantized model to minimize the memory footprint — the tiering benefits are largest when the model fits mostly in RAM with only a small SSD overflow.
- Use it for experimentation and evaluation, not production serving — the current performance characteristics make it suitable for 'does this model behave the way I want?' testing.
- Monitor NVMe write cycles when using SSD spillover extensively — inference with heavy SSD use will wear down the drive faster than typical usage.
Terminology
Related Papers
Claude Code sends 33k tokens before reading the prompt; OpenCode sends 7k
동일한 모델과 작업 환경에서 Claude Code와 OpenCode의 실제 토큰 사용량을 API 레벨에서 측정한 결과, Claude Code가 시스템 프롬프트 오버헤드만으로 OpenCode 대비 4.7배 더 많은 토큰을 소비한다는 것을 확인했다.
Mesh LLM: distributed AI computing on iroh
사무실, 집, 클라우드에 흩어진 GPU들을 하나의 OpenAI 호환 API로 묶어주는 분산 LLM 실행 시스템으로, 비싼 API 비용 없이 큰 모델을 직접 운영할 수 있다.
Show HN: Frugon – Find which LLM calls a cheaper model could handle (local, MIT)
내 LLM API 비용이 어디서 새는지 로컬에서 분석해주는 오픈소스 CLI 도구로, 비싼 모델 대신 저렴한 모델로 전환 가능한 호출을 골라낸다.
Jamesob's guide to running SOTA LLMs locally
2천 달러짜리 RTX 3090 한 장부터 4만 달러짜리 RTX PRO 6000 4장 셋업까지, 로컬에서 최신 LLM을 직접 돌리는 방법을 하드웨어 선택·구성·실행 설정까지 통째로 정리한 실전 가이드다.
Faster embeddings: how we rebuilt the ONNX path in Manticore
Manticore Search가 기존 SentenceTransformers/Candle 백엔드를 ONNX Runtime으로 교체해 텍스트 임베딩 생성 속도를 평균 14배 향상시켰다. 별도 모델 서비스 없이 DB 내부에서 직접 임베딩을 처리하는 구조에서 INSERT 속도가 곧 임베딩 속도이기 때문에 이 개선은 실질적인 ingest 처리량 향상으로 직결된다.
Asymmetric Quantization: Near-Lossless Retrieval with 97% Storage Reduction
멀티벡터 검색 모델의 문서 벡터를 1비트 이진값으로 압축하고 쿼리 벡터만 int8로 유지하는 비대칭 양자화 기법으로, 스토리지를 97% 줄이면서 검색 품질 손실을 0.61점(NDCG@10 기준)에 그치게 만든 실제 프로덕션 적용 사례다.