avifenesh/memra

Rust + CUDA inference engine for NVIDIA RTX PRO 6000 Blackwell and RTX 5090. Serves safetensors and GGUF over an OpenAI-compatible API, with per-device tuned defaults and speculative decode gated byte-identical to plain decode. Hosted instance: inference.tiyuvta.ai

memra とは何ですか?

memra は、CUDA を介して NVIDIA GPU と直接通信する、Rust で記述された open‑source inference engine です。これは RTX PRO 6000 (Blackwell) および RTX 5090 ワークステーション用カード向けにチューニングされており、Hopper H100 カード向けにコンパイルすることも可能です。このエンジンは、Hugging Face の safetensors チェックポイントまたは GGUF モデルファイルをロードし、OpenAI‑compatible HTTP API (chat‑completion および completion エンドポイント) を通じて提供します。単一モデル・単一 GPU でのデプロイ(またはモデルが 1 枚のカードに対して大きすぎる場合は 2 枚の GPU によるパイプライン)に焦点を当てており、以下のような機能を提供します:

  • VRAM 使用量を予測可能に保つための prefix‑cache 再利用と tenant‑scoped admission control、
  • 自動フォールバック機能を備えた MTP speculative decoding (draft‑model 加速)、
  • image と video 入力 のサポート (モデルの vision tower はプロセス内で動作します)、
  • 内蔵の認証、ヘルスプローブ、およびメトリクス。

このプロジェクトは、inference.tiyuvta.ai で積極的に本番環境で使用されており、そこでは Qwen 3.8‑27B モデルが README に記載されているものと同じデフォルト設定で提供されています。


クイックスタート (ローカルでモデルを実行する)

# Install the pre‑built binaries (Linux x86_64, glibc ≥2.35, driver ≥580)
curl -fsSL https://raw.githubusercontent.com/avifenesh/memra/main/tools/install.sh | sh
export PATH="$HOME/.local/bin:$PATH"

# Run a single‑turn chat generation from a local checkpoint or a Hugging Face repo
MEMRA_CHAT=1 run-gen /path/to/hf‑checkpoint \
  --prompt "Explain KV caches in one sentence."

# Start the OpenAI‑compatible server (default bind 127.0.0.1:8080)
MODEL=/path/to/hf‑checkpoint
MEMRA_MODELS="qwen=$MODEL" memra-server

その後、API を呼び出すことができます。例:

curl -sS -N http://127.0.0.1:8080/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"qwen","messages":[{"role":"user","content":"Explain KV caches in one sentence."}],"max_tokens":128,"stream":true}'

認証、複数のモデルエイリアス、および詳細なフラグについては、docs/SERVING.md に記載されています。


パフォーマンス ハイライト (RTX PRO 6000 Blackwell)

Metric Value
Time‑to‑first‑token (cold, p50) 0.156 s (single request)
TTFT (cached turn, 5.7k‑token prefix) 0.130 s
Decode throughput (plain) 140 tokens / s
Speculative‑decoding throughput 240‑245 tokens / s (top‑p/k sampling)
Sustained load 576 requests with 0 errors, 0 sheds
Exactness 8‑byte identical logits to the reference model

RTX 5090 laptop では、同じモデルが plain decode で約 75 tokens / s で動作します。README には、いくつかの Qwen モデルについて llama.cpp に対する 1.1 ×‑2.3 × の高速化 を示すサイドバイサイドの表も用意されています。


サポートされているモデルとハードウェア

  • 主なターゲット: RTX PRO 6000 (sm_120a) および RTX 5090 (sm_120a)。エンジンはこれらのアーキテクチャ向けに個別の pre‑built binaries を提供しており、実行時に適切なコードパスを選択します。
  • オプションのコンパイル制限付きレーン: Hopper H100 (sm_90a) – 適切な CUDA arch flag を使用してソースからビルドする場合に利用可能です。
  • モデルカタログ (一部の例):
    • Qwen 3.8‑27B (dense hybrid, NVFP4+Q5_K quantisation) – MTP draft head を使用して提供されます。
    • Qwen 3.6‑35B‑A3B (Mixture‑of‑Experts, IQ4_XS) – 単一のカードで動作します。より大きな MoE モデルは PP‑2 を介して 2 枚のカードに分割可能です。
    • Gemma‑4 series (MoE or dense, QAT‑quantised) – CLI‑only assistant draft が利用可能です。
    • Ornith‑1.0, Qwen‑AgentWorld, Step‑3.7‑Flash (up to 196 B) – それぞれ quantisation と drafter の要件が記載されています。

このエンジンは、リストに記載されている正確なモデル・quantisation・drafter の組み合わせのみをサポートすると主張しています。その他のチェックポイントは拒否されるか、汎用的な (より遅い) パスで動作します。


設計上の境界 (memra が目指していないこと)

  • テンソル・パラレルまたはマルチノード・スケーリングは行わない – 単一のワークステーション GPU (または 2 枚の GPU による PP‑2 分割) 用に構築されています。大規模なデータセンター・フリートに対しては、NCCL ベースのテンソル・パラレルを実現するプロジェクトを検討してください。
  • 限定的なモデル・カバレッジ – デフォルト設定で提供されるのは、明示的に測定・チューニングされたモデルのみです。新しいモデルを追加するには、元の safetensors チェックポイント (または GGUF) を提供し、memra がそれを内部レイアウトに再パックするのを待つ必要があります。 | No generic CPU fallback – エンジンは CUDA 可能な NVIDIA GPU を必要とします。CPU のみで動作するモードはありません。
  • Focus on latency‑critical serving – 高いコンカレンシーを扱える一方で、設計は大規模な batch inference ではなく、低レイテンシーの chat/completion ワークロードを優先しています。

詳細を学ぶには

  • Installation guide – README の Install セクションと tools/install.sh
  • Serving detailsdocs/SERVING.md (API spec, auth, cache semantics, metrics)。
  • Architecture notes for H100docs/ARCHITECTURE-H100.md
  • Flag referencedocs/FLAGS.md

memra は、Blackwell クラスの RTX GPU を所有し、大規模なデータセンター向けサーバーのオーバーヘッドなしに、高速で OpenAI 互換の API エンドポイントが必要な開発者向けの、ニッチだが本番環境向けの推論スタックです。

関連

  • Dispatch
  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト