Strata はなぜ少ない VRAM でも速いのか

1,250 億パラメータのモデルを 12〜16 GB のグラフィックスカードで動かし、同じモデルファイルの llama.cpp より 4 倍速く書く。秘訣は一つではない。Strata は PC 全体を一本のパイプラインとして扱い、いちばん細い管を通るバイトをできるだけ減らす。

フレームワーク解説・実測事例つき2026年10月12日約15分で読めます

要点

Strata は、ひとつのモデルファミリー Qwen3.8-Flash-Next のためだけに書かれたオープンソースの推論エンジンである。このモデルは 1,250 億パラメータの混合エキスパート(MoE)モデルで、1 トークンの計算に実際に使われるのは約 60 億パラメータにすぎない。12 GB の RTX 3060 では、同じ GGUF ファイルを読むチューニング済みの llama.cpp に比べて書き込みが 4.6 倍(毎秒 41.6 対 9.1 トークン)、32K トークンのプロンプトの読み取りが 3.1 倍 速い。効いているのは主に四つの考え方だ。

  • 層ごとではなく、エキスパートごとに分ける。 モデルの 24,576 個のエキスパートを使用頻度で順位づけし、グラフィックスカードはすべての層からよく使われるものを手元に置き、会話の間も学習し続ける。
  • 三者が同時に働く。 各層で、GPU は手元にあるエキスパートを計算し、CPU は足りないエキスパートを RAM 上でその場で計算し、同時に一部の不足分を PCIe でコピーする。
  • 予測してから検証する。 モデル自身の多トークン予測(MTP)層が最大 3 トークンを下書きし、1 回のパスでまとめて検証するので、重い 1 回の計算から 2〜3 トークンが得られる。
  • 大きなまとまりでストリーミングする。 長いプロンプトは数千トークン単位のチャンクで読むため、PCIe で送ったエキスパートはチャンク全体で再利用される。

本稿はその全体像である。各要素と、それが浮き彫りにするハードウェアのボトルネックは、それぞれ個別の詳説記事で扱う予定だ。以下の数値にはすべて出典と条件を記し、一覧は末尾にまとめた。

問題:1,250 億パラメータと 12 GB

混合エキスパートモデルは、各層の密なフィードフォワードブロックを多数の小さな「エキスパート」に置き換え、ルーターがトークンごとにそのうちいくつかを選ぶ。Qwen3.8-Flash-Next は 48 層で、各層に 512 個、合計 24,576 個のエキスパートを持ち、各層のルーターがトークンごとに 10 個を選ぶ。つまり 1 トークンが触れるエキスパートは 480 個、全体の約 2% である。

この疎さこそが、ゲーミング PC での実行を現実的にしている。Strata が最高品質として勧める IQ3_S では、エキスパートだけで約 50 GB、さらに 29 GB の n-gram 参照テーブルと、全トークンが使う約 3.5 GB の重み(アテンションと DeltaNet のミキサー、ルーター、共有エキスパート、出力ヘッド)が必要になる。これが収まるコンシューマー向けグラフィックスカードはない。しかし 1 トークンに必要なのは、常に使う 3.5 GB と約 1 GB のエキスパートだけだ。

図 1モデルは約 83 GB。1 トークンに必要なのはそのうち約 4.5 GB。

Qwen3.8-Flash-Next、IQ3_S · 3.5 + 50 + 29 GB

1 トークンが読む部分 · 3.5 GB + エキスパート 480 個 ≈ 1 GB

常に使う重み(VRAM) エキスパート(RAM、最もよく使うものは VRAM にキャッシュ) n-gram 参照テーブル(SSD) グラフィックスカードのメモリ
24,576個のエキスパート:48 層 × 512
10 / 5121 トークンあたり各層でルーティングされるエキスパート
≈ 2%1 トークンが読むエキスパートの重みの割合

サイズは Strata の Models ガイド(IQ3_S のエキスパートは RAM で約 50 GB)と論文の表 1(常に使う重み ≈ 3.5 GB、参照テーブル 28.8 GB でトークンごとに数行だけ読む)による。IQ3_S のエキスパート 1 個は約 2 MB、480 × 2 MB ≈ 1 GB。

だから本当の問いは、80 GB を 12 GB にどう詰め込むかではない。次のトークンがどの 1 GB を必要とし、その 1 GB がいまどこにあり、誰が計算すべきか、である。以下の設計はすべて、この問いへの答えになっている。

PC はパイプの集まり

Strata は、パイプの中を流れる水として考えるとわかりやすい。エキスパート、KV キャッシュ、活性値は、SSD、RAM、CPU、PCIe リンク、グラフィックスカードのメモリの間を絶えず流れている。流れは経路上でいちばん細いパイプより速くはなれず、PC の中のパイプの太さは一桁以上も違う。

図 2データはどこにあり、パイプはどれほど太いか
GPU メモリ(VRAM)常に使う重み、KV キャッシュ、最もよく使うエキスパート。RTX 3060 → RTX 5090。
360 – 1,792 GB/s
システム RAM、デュアルチャネル24,576 個のエキスパートすべて。DDR4-2133 → DDR5-6000。
34 – 96 GB/s
CPU によるエキスパート計算ミスしたエキスパートを RAM 上でその場で計算。
22 – 25 GB/s · テスト機で実測
GPU への PCIe リンクプロンプトのチャンクのエキスパート、ミスの一部、キャッシュの入れ替え。3.0 x8 → 5.0 x16、片方向。
8 – 64 GB/s
NVMe SSD参照テーブル:1 トークンあたり最大約 23 KB。
3.5 – 7 GB/s

ハードウェア仕様上の理論ピーク帯域、対数目盛。実際の転送はこれより低い。CPU の行は ModelDock のテスト機(Ryzen 9 5900XT、64 GB DDR4-2133)での実測で、エキスパート計算は毎秒 22〜25 GB、つまりこのメモリの上限で動いていた。

ここから二つのことが言える。第一に、データはそれがある場所で計算するのがよい。エキスパートを RAM から CPU に読むほうが、細い PCIe リンクを通して GPU に送るより安く済むので、CPU は待つのではなく実際に仕事をする。第二に、同じグラフィックスカードでも PC が違えば性能は大きく変わる。公開されている Strata の報告では、RTX 5070 Ti 1 枚の書き込み速度が、ホストの CPU、メモリ、エンジンのバージョンによって毎秒約 50〜118 トークンまでばらつく。ModelDock 自身のテスト機(PCIe 3.0、DDR4)では、メモリを DDR4-2133 から DDR4-2933 に上げると書き込みが約 20% 速くなった一方、15 万トークンのプロンプトの読み取りは 3.5% しか変わらなかった。どのパイプがどの速度を縛っているのかは、最初の詳説記事のテーマである。

粗から細へ:モデルを分ける四つの方法

モデルが VRAM に収まらないとき、ランタイムは何をカードに残すかを決めなければならない。その答えは次第に細かくなってきた。

  1. モデル全体を VRAM に置く(vLLM、SGLang、またはすべての層を GPU に置いた llama.cpp)。収まれば最速だが、このモデルでは 100 GB 規模の GPU メモリが要る。
  2. 層ごとに分ける(llama.cpp -ngl)。前半の層を GPU、残りを CPU で動かすので、すべてのトークンが遅い部分を通る。
  3. 層ごとにエキスパートのテンソルを移す(llama.cpp --n-cpu-moe や -ot)。アテンションは GPU に残し、N 層分のエキスパートを RAM に移す。小さなカードで大きな MoE モデルを動かす、いまの一般的な方法だ。
  4. エキスパートごとに分ける(Strata)。常に使う重みは GPU に残し、残りの VRAM をすべての層の個々のエキスパートで、使用頻度順に埋める。それ以外は CPU がその場で計算する。
図 3同じ 24,576 個のエキスパート、VRAM の三つの埋め方
層ごとに割り当て(llama.cpp --n-cpu-moe の方式)VRAM に 4,096 個:8 層分のすべてのエキスパート
48 × 512 のエキスパートの格子で、最後の 8 行、つまり 8 層分だけが VRAM にあるものとして光っている。
Strata、RTX 5070 Ti 16 GB 1 枚VRAM に 4,176 個:どの層にも 57〜109 個
同じ格子に、48 層すべてに散らばった 4,176 個のシアンのセル。各層で最もよく使われるエキスパート。
Strata、さらに 0〜11 層を受け持つ RTX 3060 12 GBVRAM に 3,863 + 4,549 = 8,412 個
格子の最初の 12 行はほぼ紫で RTX 3060 が保持し、残り 36 層には RTX 5070 Ti が保持する 4,549 個のシアンのセルが散らばっている。
RTX 5070 Ti の VRAM 上 RTX 3060 の VRAM 上 RAM 上:CPU が計算するか PCIe でコピー(明るいほどよく使われる)

Strata に同梱のエキスパートプロファイルから作図。全 24,576 個のエキスパートが使用頻度で順位づけされ、各カードは自分の層についてこの順にスロットを埋めるので、図は初期配置の近似である(適応層が使用中にエキスパートを入れ替える)。層ごとの図は同じ予算での例示。スロット数:ModelDock テスト機、2026 年 10 月 3 日。

図を見れば違いは明らかだ。同じ予算を層単位で割り当てると、エキスパートの参照が VRAM に当たるのは、カードが持つ 8 層に入ったときだけ、つまりおよそ 6 回に 1 回である。Strata は予算を 48 層すべてに分散させる(このカードでは各層 57〜109 個)。人気のエキスパートはもともと各層に散らばっているからだ。同梱のプロファイルだけでも、12 GB のカードはルーティングされたエキスパートの約半分を VRAM から供給できる。適応層は 4 ラウンドごとに最大 96 個のエキスパートを、会話で実際に使われているものへと入れ替え、4K コンテキストでこの割合を 72% まで引き上げる。ModelDock のテスト機では、RTX 5070 Ti が持つ 3,600〜4,400 個、つまり全エキスパートの 15〜18% が、エキスパート参照の 70〜78% をまかなった。

Strata 自身の経験則はここから来ている。VRAM が 1 GB 増えるごとに約 700 個多くのエキスパートが入り、GPU 上のエキスパートはどれも CPU が計算しなくてよいものになる。速い GPU より、大きな VRAM のほうが効く。

1 トークン、三者の分担

Strata の論文は、デコードの 1 ステップを「各層で三者が同時に働く」と表現している。各層で GPU はまずアテンションとルーターを動かし、選ばれた 10 個のエキスパート番号を、ページロックされたホストメモリの小さな領域「ドアベル」に書き込む。CPU はドライバーを待たずにこのドアベルを見張っており、すぐに仕事を振り分ける。VRAM にすでにあるエキスパートは GPU へ、不足分の一部は PCIe で GPU にコピーし、残りはそれを保持する RAM のそばで CPU コアが計算する。GPU が結果を足し合わせ、次の層が始まる。48 層の処理全体は 1 つの CUDA グラフとして記録されているので、ホストが同期的なドライバー呼び出しを待つことはない。

図 4デコードの 1 ステップ:各層で三者が働く
  1. GPUアテンション、ルーター:10 個のエキスパートを選ぶ
  2. ドアベルページロックされたホストメモリに 10 個のエキスパート番号
  3. GPUVRAM にあるエキスパートを計算
    PCIeミスの一部を GPU にコピー
    CPU残りのミスを RAM 上で計算
  4. GPU結果を足し合わせ、次の層へ

× 48 層、1 つの CUDA グラフとして記録

実測:1 ステップの時間の内訳(RTX 5070 Ti 1 枚)

短い会話 · 参照の 78% が VRAM にヒット35.7 ms

15 万トークンのコンテキスト · 70% がヒット44.7 ms

GPU の処理(ms) CPU によるミスしたエキスパートの計算(ms) 下書き、受け渡し、その他(ms)

書き込み速度 = 1 ステップで残るトークン数 ÷ ステップ時間:1.65 トークン ÷ 35.7 ms ≈ 毎秒 46 トークン。

ModelDock テスト機、Evidence のパイプライン外での測定:RTX 5070 Ti 16 GB、Ryzen 9 5900XT、64 GB DDR4-2133、Windows。Strata 0.1.38 とフォークのパッチ、IQ3_S、q4_0 KV、MTP、VRAM 上のエキスパート約 3,600 個。1 ステップで 1 ウィンドウ分の下書きトークンを検証する。

内訳を見ると、時間の使われ方がわかる。ModelDock のテスト機では、CPU によるエキスパート計算が各ステップの 45〜52% を占め、毎秒 22〜25 GB で動いていた。これはその DDR4-2133 メモリが出せる帯域のすべてであり、この PC の書き込み速度はグラフィックスカードではなく RAM の帯域に縛られている。したがって速くする方法は二つ。ミスを減らすこと(大きな VRAM、よりよいキャッシュ、2 枚目のカード)と、より速い RAM だ。PCIe に回す割合も同じ考え方で決まる。0.1.41 まではリンク速度だけで決めていた(速いリンクではミスの 55%)。0.1.42 以降、NVIDIA のカード 1 枚の構成では、書き込みの最初の数秒で、リンク速度と、CPU がミスしたエキスパートを計算する実測速度からこの割合を調整する。

予測してから検証する

複数のトークンを検証するステップは、1 トークンを書くステップより少し高くつくだけだ。常に使う重みは一度読めばよく、受け渡しも一度で済む。増えるのは、追加トークンがルーティングするエキスパートの分だけである。そこで Strata は各ステップを無駄にしない。モデルには専用の MTP 層があり、次の最大 3 トークンを下書きする。48 層を通る 1 回のパスがすべての下書きを同時に検証し、モデル本体が同意したものを残して、さらに自分で 1 トークンを加える。

図 5予測してから検証する:1 回のパスで複数のトークン
MTP 層が下書き…GPU 上のエキスパートは、CPU が計算し続ける

48 層を通る 1 回のパスで、3 つの下書きをまとめて検証

モデル本体が採用…GPU 上のエキスパートは、CPU が計算 ✓し ✓続けるない
2.4 – 3.21 パスあたりの平均トークン数
1.6 – 1.8×MTP なしに比べた書き込みの速さ
0.8 GB下書き層が使う VRAM

Strata 論文の発見 2〜3:4K で通常のデコーディングは毎秒 47〜57 トークン、検証ウィンドウありで 82〜92。貪欲な投機的デコーディングの出力は通常の貪欲デコーディングと完全に一致する。文は説明用の例。

論文の基準機では、これにより 4K コンテキストの書き込みが毎秒 47〜57 トークンから 82〜92 トークンへ、1.6〜1.8 倍になり、出力は通常の貪欲デコーディングとトークン単位で完全に一致する。下書き層は VRAM 上にあり 0.8 GB を使う。llama.cpp との比較は示唆的だ。llama.cpp の MTP は別に 3.4 GB の下書きヘッドを必要とし、そのぶん多くのエキスパートが CPU に押し出された結果、これらのカードでは MTP を使わないほうが速かった。小さなカードでは、投機的デコーディングはエキスパートの置き場所を奪わないときにだけ得になる。

長いプロンプトを読む:大きなまとまりで流す

プロンプトの読み取り(prefill)は別種の仕事である。数千トークンのプロンプトは、ほぼすべての層のほぼすべてのエキスパートにルーティングされるので、人気のエキスパートをキャッシュしてもあまり効かない。Strata は代わりに長いプロンプトをチャンクに分けて読む。自動設定では最大 8,192 トークンで、設定すればもっと大きくできる(ModelDock のテスト機は 16,384)。そして現在の層がアテンションを計算している間に、次の層のエキスパートを PCIe で GPU に流し込む。送ったエキスパートはチャンク全体で使われるので、1 回の転送コストが数千トークンに分散される。

図 6読み取り速度はプロンプトが長くなるほど上がり、やがて横ばいになる
プロンプト長に対する読み取り(prefill)速度、対数目盛。RTX 3060:128 トークンで毎秒 50、32K で 820、260K で 739。RTX 5070 Ti:512 トークンで 845、32K で 3,393、131K で 3,147。RTX 5090:4K で 3,072、32K で 5,963、262K で 5,535。 チャンク 0 2,000 4,000 6,000 100 1K 10K 100K プロンプトのトークン数 tok/s RTX 5090 RTX 5070 Ti RTX 3060
RTX 5090 + Ryzen 7 9700X · PR #811 RTX 5070 Ti + Core Ultra 7 265K · issue #791 RTX 3060 12 GB + Core i7-12700 · PR #1725

Strata コミュニティの報告、IQ3_S、読み取り速度(毎秒のプロンプトトークン数)。RTX 5070 Ti と RTX 3060 はコールドキャッシュ、RTX 3060 は 0.1.41、RTX 5090 は 0.1.39。網掛けは 8K〜16K トークンで、プロンプトがチャンク全体を埋め始める範囲。

この曲線は、利用者がよく気づく二つの現象を説明する。短いプロンプトの読み取りが遅いのは、小さなチャンクでもルーティングしたエキスパートの転送コストを払うからだ。RTX 3060 は 128 トークンのプロンプトを毎秒約 50 トークン、32K を 820 トークンで読む。チャンクが埋まると、読み取り速度は非常に長いコンテキストまでほぼ横ばいになる。疎なアテンションが読む位置は限られているからだ。PR #811 の RTX 5090 は、261,880 トークンでもなお毎秒 5,535 トークンを読む。PCIe がいちばん効くのはここである。ModelDock のテスト機では、リンクが PCIe Gen1 に落ちていたせいで読み取りがおよそ半分になり、BIOS の設定で Gen3 に戻すまで回復しなかった。

2 枚のカードでリレーする

グラフィックスカードが 2 枚あるとき、Strata は層で分割する。テンソル並列ではなく、パイプライン並列だ。1 枚目は前半の層を、2 枚目は残りの層に加えて出力ヘッドと下書き層を受け持ち、それぞれ自分の層のエキスパートだけをキャッシュする。活性値がカード間を渡るのは検証ウィンドウごとに 1 回、ページロックされた RAM を通る数百 KB だけなので、NVLink もピアツーピア(P2P)も要らない。パイプライン化したウィンドウでは、最後のカードが現在のウィンドウを検証している間に、1 枚目のカードが下書きの予測に基づいて次のウィンドウを始め、予測が外れればやり直す。

図 72 枚のカードのリレー:GPU、GPU、CPU が一本のパイプラインに

受け渡し次のカードはページロックされたメモリ上のフラグを待つ。ウィンドウごとに数百 KB、NVLink も P2P も不要。

パイプライン化大きなカードがウィンドウ K を検証している間に、小さなカードが下書きの予測に基づいて K+1 を始め、外れればやり直す。

CPU の分担CPU はどのカードにもないエキスパートを、両方のカードと並行して計算する。

長いプロンプトエキスパートは PCIe でチャンクごとに流れる(テスト機では 15,360 トークン)。チャンクが 1〜2 個しかないと、二つの段は順番に動く。

模式図であり縮尺は正確ではない。層分割とパイプライン化したウィンドウ:Strata の Multi-GPU ガイド。フラグによる受け渡しは Hardin22/Strata-DualGPU フォークによる。

ModelDock のテスト機では、伸びのほとんどはパイプラインそのものではなく容量から来た。2 枚のカードが持つエキスパートは 4,176 個ではなく 8,412 個になり、CPU が層・ステップごとに計算するエキスパートは 59% 減り、1 ステップは 36.7 ms から 23.8 ms に縮んだ。パイプライン化単体の効果は約 4〜6% だった。読み取りは速くならなかった。チャンクが 1〜2 個しかないと二つの段は順番に動くので、8K〜64K のプロンプトは 18〜53% 遅くなり、150K でようやく 1 枚と並んだ。

図 8同じ PC で実測:カード 1 枚と 2 枚

書き込み、短い会話 tok/s

1 枚47.6
2 枚73.3
+54%

書き込み、15 万トークンのコンテキスト tok/s

1 枚42.3
2 枚58.0
+37%

15 万トークンのプロンプトの読み取り tok/s

1 枚1,514
2 枚1,562
≈

VRAM 上のエキスパート

1 枚4,176
2 枚8,412
×2

CPU が層・ステップごとに計算するエキスパート

1 枚3.89
2 枚1.58
−59%

1 ステップの時間、短い会話 ms

1 枚36.7
2 枚23.8
−35%

ただし中程度の長さのプロンプトは 2 枚のほうが読み取りが遅い(tok/s、1 枚 → 2 枚)

−34%8K · 1,047 → 695
−53%16K · 1,566 → 734
−29%32K · 1,665 → 1,185
−18%64K · 1,700 → 1,395

ModelDock テスト機、2026 年 10 月 3 日、Evidence のパイプライン外での測定。1 枚:RTX 5070 Ti 16 GB、マップドエキスパート。2 枚:RTX 3060 12 GB(0〜11 層)+ RTX 5070 Ti(12〜47 層、出力ヘッド、下書き層)、各 PCIe 3.0 x8、常駐エキスパート、パイプライン化ウィンドウ。Ryzen 9 5900XT、64 GB DDR4-2133、Windows。IQ3_S、q4_0 KV、MTP、貪欲デコーディング。Strata 0.1.38 + architectds/Strata フォークの Hardin22/Strata-DualGPU(#642)。両方ともマップドエキスパートにすると、2 枚の値は 68.3 / 59.7 / 1,609。

公開された報告も同じ方向を示している。同じホストで RX 6900 XT を 2 枚使った例(Strata 0.1.40.1、PR #1270)では、1 枚に比べて分割で書き込みが 32%、読み取りが 66% 速くなった一方、4K のプロンプトの読み取りは 3% 遅くなった。分割が得になるのは、増えた VRAM が CPU の仕事を減らす場合であり、どちらかのカード自体が速くなるわけではない。

実測:Strata と llama.cpp

現時点でいちばん公平な比較は、Strata 自身が 2026 年 10 月 6 日に行った直接比較である。両エンジンが同じ IQ3_XXS の GGUF ファイルを読み、llama.cpp v0.6.0 は -ncmoe と -ub の掃引でチューニングし、プロンプトも同じにした。Strata は測定したすべての項目で上回った。

図 9同じ GGUF ファイル、同じプロンプト:Strata と llama.cpp

RTX 3060 12 GB · 書き込み、4K プロンプト tok/s

Strata41.6
llama.cpp9.1
4.6×

RTX 3060 12 GB · 32K プロンプトの読み取り tok/s

Strata1,050
llama.cpp338
3.1×

Tesla P100 16 GB · 書き込み、32K プロンプト tok/s

Strata32.8
llama.cpp9.1
3.6×

Tesla P100 16 GB · 32K プロンプトの読み取り tok/s

Strata323
llama.cpp157
2.1×

RTX 5070 12 GB · 32K プロンプトの読み取り tok/s · 1 ラウンドのみ

Strata1,606
llama.cpp183
8.8×

Strata による 2026 年 10 月 6 日の直接比較:両エンジンが同じ Qwen3.8-Flash-Next GSQ-RCO IQ3_XXS を読む。llama.cpp v0.6.0(b11429)は -ncmoe と -ub の掃引でチューニング(RTX 5070 は --fit on)。温度 0 での 256 トークンの回答の中央値。Strata はセットアップが選ぶ設定(MTP、int8 KV)。RTX 3060:46 GB RAM、Linux。Tesla P100:62 GB、Linux。RTX 5070:64 GB、Windows。

報告書は自らの限界も明記している。試行回数が少ないこと、チューニングの掃引が小さいこと、テンソルごとの -ot パターンを試していないこと、llama.cpp に使った MTP ヘッドがモデル本来のものではないことだ。著者は、llama.cpp をさらに詰めても数パーセント上がる程度で、4 倍の差は埋まらないと見ている。別の種類のマシンでの比較も同じ方向を示す。128 GB の統合メモリを持つ AMD Ryzen AI Max+ 395 では、Strata 0.1.40 が 128K コンテキストで毎秒約 51 トークンを書き込み(UD-IQ4_XS、MTP あり)、llama.cpp の Vulkan 版はより大きな UD-Q4_K_XL ファイルで下書きモデルなしの約 15.5 トークンだった。量子化も構成も異なるので、倍率ではなく方向として読むべきだ。

Strata がどこでも最速というわけではない。モデル全体が GPU メモリに収まるなら、サーバー向けエンジンが勝つ。96 GB の RTX PRO 6000 で SGLang(NVFP4)を動かすと、書き込みは毎秒 171 トークン、64K での読み取りは 10,000 トークンを超える。RTX 5090 上の Strata は 168 と 5,803 である。Strata が答えるのは「モデルが収まらない」という問題であって、すべてを VRAM に載せるサーバーの代わりではない。

代償

  • 対応するモデルファミリーはひとつ。 Strata は Qwen3.8-Flash-Next とその派生モデルのために作られており、汎用のランタイムではない。
  • 短いプロンプトと最初のメッセージ。 512 トークンのプロンプトは長いプロンプトのごく一部の速度でしか読めず、12 GB のカードでは新しい 3 万トークンの会話を読むのに約 1 分かかる。以降は会話を再利用し、新しい部分だけを読む。
  • RAM は依然として重要。 エキスパートは RAM に置かれる。IQ3_S で約 50 GB、Q2_0 で約 34 GB、加えてシステム用に約 10 GB。VRAM が大きく RAM が少ないマシン向けに低 RAM モードもある。
  • MTP の効果は小さめ。 モデル全体を VRAM に置くエンジンが報告する 2.5〜3 倍に対して 1.6〜1.8 倍にとどまる。下書きしたトークンが一つ増えるたびに、それぞれ別の CPU エキスパートにルーティングされるからだ。
  • 設定が変わるとビット単位では一致しない。 貪欲な投機的デコーディングは貪欲デコーディングと一致するが、CPU と GPU のカーネルは丸め方が異なり、適応キャッシュ、CPU 分担、テールスキップも末尾のビットを変えるので、二つの構成は長く走らせると食い違うことがある。
  • 既定では一度に 1 リクエスト。 12 GB のカードで並列スロットを使うと遅くなる。

よくある質問

Strata は 8 GB のグラフィックスカードで動きますか?

Strata が対象とするのは 12 GB 以上の NVIDIA と AMD のカードだ。それより小さいと、常に使う重み、KV キャッシュ、下書き層を置いたあとにエキスパートキャッシュ用の VRAM がほとんど残らない。

Strata にはどれくらいの RAM が必要ですか?

エキスパートはすべて RAM に置かれる。Q2_0 で約 34 GB、IQ2_XS で 35.5 GB、IQ3_XXS で 43 GB、IQ3_S で 50 GB、加えて Windows とほかのプログラム用に約 10 GB。64 GB あればすべてのサイズが入り、48 GB なら Q2_0 と IQ2_XS が入る。

Strata は llama.cpp、Ollama、LM Studio より速いのですか?

同じ GGUF ファイルと 12〜16 GB のカードでは、Strata が公開した直接比較で、llama.cpp より書き込みが 3.0〜4.7 倍、読み取りが 1.6〜8.8 倍速かった。ModelDock には、これらのカードでこのモデルを Ollama や LM Studio で動かした公開測定はまだない。

2 枚の GPU には NVLink や同じ型番が必要ですか?

不要だ。層分割ではウィンドウごとに数百 KB をページロックされたシステムメモリ経由で渡すので、型番の違うカードでも NVLink や P2P なしで組み合わせられる。ModelDock のテスト機も RTX 3060 と RTX 5070 Ti の組み合わせだ。出力ヘッドと下書き層を受け持つので、速いほうのカードを後ろに置く。

VRAM を増やすべきか、速い GPU を買うべきか?

このモデルでは、たいてい VRAM を増やすほうが効く。1 GB 増えるごとに約 700 個多くのエキスパートが入り、そのひとつひとつが CPU の計算を減らす。カードを載せる PC のメモリと PCIe も重要で、それが最初の詳説記事のテーマになる。

自分の PC はどう測ればいいですか?

ModelDock スピードテスト を使ってほしい。AI エージェントに 1 行を貼り付けると、標準的なローカルベンチマークを実行してシェアカードを返してくれる。マシン同士は ランキング と Benchmark ワークベンチで比べられる。

次に扱うこと

この総論は地図である。今後の詳説記事では、その一部ずつを掘り下げる。

  • マシンごとのボトルネック。 メモリ帯域、PCIe の世代とレーン数、DDR4 と DDR5。同じ RTX 5070 Ti が別の PC では 2 倍速くなる理由と、古いプラットフォームには大容量 VRAM のカード 1 枚が必要で、新しいプラットフォームなら小さなカード 2 枚でよい理由。
  • エキスパートキャッシュ。 プロファイル、適応的な入れ替え、長い会話でヒット率が下がる理由。
  • 予測してから検証する。 モデルの大部分が RAM にあるときの MTP による下書き。
  • 2 枚のカードのリレー。 分割点、パイプライン化したウィンドウ、ページロックされたメモリを介した受け渡し。
  • 長いプロンプト。 チャンクの大きさ、PCIe ストリーミング、短いプロンプトでの CPU 分担。

出典と条件

  • Strata(MIT ライセンス)、2026 年 10 月 10 日のリリース 0.1.42:How it works、Models、Multi-GPU、論文 Running a 125-Billion-Parameter Model on a Normal PC(2026 年 9 月、基準機:RTX 5070 12 GB、64 GB DDR5、6 コア)。
  • Strata と llama.cpp v0.6.0 の比較、2026 年 10 月 6 日:IQ3_XXS GGUF。RTX 3060 12 GB と 46 GB RAM(Linux)、Tesla P100 16 GB と 62 GB(Linux)、RTX 5070 12 GB と 64 GB(Windows、1 ラウンドのみ、llama.cpp --fit on)。256 トークンの回答の中央値。
  • エキスパート配置図:Strata に同梱のエキスパートプロファイルから作図。全 24,576 個のエキスパートが順位づけされており、各カードは自分の層についてこの順にスロットを埋める。図は初期配置の近似であり、適応層が使用中に入れ替える。
  • ModelDock テスト機、2026 年 10 月 3 日、ModelDock Evidence のパイプライン外での測定:RTX 5070 Ti 16 GB と RTX 3060 12 GB(PCIe 3.0、2 枚時は各 x8)、Ryzen 9 5900XT、64 GB DDR4-2133、Windows。Qwen3.8-Flash-Next GSQ-RCO IQ3_S、q4_0 KV、MTP、貪欲デコーディング。Strata 0.1.38 に architectds/Strata フォークの Hardin22/Strata-DualGPU パッチ(#642)を適用。「短い会話」は 3 つのチャットプロンプトにそれぞれ 400 トークンで回答、「150K」はコールドな 150,228 トークンのコードプロンプト。
  • 読み取り曲線:RTX 5070 Ti と Core Ultra 7 265K(issue #791、IQ3_S、コールドキャッシュ)、RTX 3060 12 GB と Core i7-12700(PR #1725、0.1.41、IQ3_S、コールドキャッシュ)、RTX 5090 と Ryzen 7 9700X(PR #811、0.1.39、IQ3_S)。
  • 同一ホストの RX 6900 XT 2 枚、Strata 0.1.40.1、IQ3_S、131K コンテキスト(PR #1270)。
  • Ryzen AI Max+ 395:Strata v0.1.40 リリースノート、llama.cpp b10707 Vulkan(soothill.io、2026 年 8 月 27 日)。
  • すべて VRAM に載せた参考値:RTX PRO 6000 96 GB の SGLang、NVFP4(結果)。
  • RTX 5070 Ti のホスト別のばらつきとその他のハードウェア記録:ModelDock Data と Evidence。