memory & vram / pillar
LM StudioのメモリとVRAMの目安|ファイルサイズ・KVキャッシュ・コンテキスト長を統合解説
「モデルが動くか」はメモリ(RAM)だけで決まるわけではありません。VRAM、ファイルサイズ、KVキャッシュ、コンテキスト長、GPUオフロードが絡みます。 本ページでは、各がどう消費されるかを仕組みから説明し、自分の環境での判断の仕方をまとめます。
RAM / VRAM / ストレージの違い
| 項目 | 役割 | GGUF選びでの意味 |
|---|---|---|
| ストレージ(SSD/HDD) | ファイルの保存場所 | GGUFファイルサイズの置き場。実行時メモリではない。 |
| RAM | 実行時の作業メモリ | CPU動作や部分的なオフロードで消費。 |
| VRAM | GPUの専用メモリ | GPU全オフロード時はここが主戦場。 |
共有メモリと iGPU
Apple Silicon や一部の APU/SoC では、RAM と VRAM が 統合(unified memory) されています。 この場合「RAM と VRAM の合計」ではなく、共通のメモリプールからモデルも描画も消費します。 一方、Intel/AMD の内蔵GPU(iGPU)は、BIOS で確保した 共有メモリ を使うことがあり、 システムから見える空きRAM が減る場合があります。
どちらが自分の環境かは、OSのシステム情報(macOS「このMacについて」、Windows「タスクマネージャー」の パフォーマンスタブ等)で確認してください。数値を断定する前に、まず「自分の空き状況」を観察します。
何がメモリを食うか
ローカルLLMの実行時、大きく次のものがメモリを消費します。
| 要素 | 概要 | 増減の鍵 |
|---|---|---|
| weight file | モデル重み本体(量子化済み) | 量子化精度・モデル規模 |
| mmap | ファイルをメモリにマップして読む仕組み | 実装・OS依存。全ロードとは限らない |
| KV cache | コンテキストの「記憶」保持分 | コンテキスト長・アーキテクチャ |
| compute buffer | 計算の中間バッファ | バッチサイズ・実装 |
| context / flash attn | コンテキスト処理の設定 | 長くするほど増大 |
| vision / MoE | マルチモーダル・専門層 | モデル構成依存 |
「計算バッファが何GB」などの精密値は、モデル・実装・設定で変わるため、ここでは範囲の目安として扱います。
KVキャッシュの増え方(目安)
KVキャッシュはコンテキスト長にほぼ比例して増大します。理論的な目安式と、仮モデルでの例は コンテキスト長とKVキャッシュ で詳しく扱っています。 要点:コンテキスト長を2倍にすると、KVキャッシュも約2倍になる傾向があります。
GPUオフロード
GPUオフロードは、モデルの層をどれだけ GPU(VRAM)へ載せるかを決めます。 全層を載せる(full offload)なら VRAM が主戦場になり、載せきれない分は RAM(CPU)へ回ります(部分オフロード)。
--estimate-only や
実測(コマンド作成ツール)で確認するのが確実です。
decision tree(動かないときの切り分け)
- 自分の 空きRAM と(あれば)空きVRAM を確認する。
- モデルの規模・量子化を、チェッカーで「まず試す」候補に下げる(例: 7Bなら Q4_K_M から)。
- コンテキスト長を既定値(8k付近)に戻す。
- GPUオフロードを下げる(部分オフロード、あるいは一旦CPUのみ)でロードできるか試す。
- それでもダメなら、より小さいモデル・軽い量子化を選ぶ。
これは「目安の手順」です。正確なエラー原因はログ・バージョンを確認(トラブルシューティング)。
具体例(仮定付き・目安)
| 環境 | まず試す | 注意点 |
|---|---|---|
| 8GB RAM / GPUなし | 1B〜3B / 軽量Q4系 | 7B以上は重い。CPU動作で遅くなりやすい。 |
| 16GB RAM | 7B〜8B / Q4_K_M | 14B以上・Q8_0は重くなりやすい。 |
| 32GB RAM / VRAM 8GB | 7B〜14B / Q4_K_M・Q5_K_M | VRAMに載る範囲を確認。長いコンテキストは注意。 |
| 64GB RAM / VRAM 12GB+ | より大きいモデルも候補 | GPU/速度/同時アプリに注意。 |
上の「まず試す」は仮定付きの目安。OSと常駐アプリを除いた空きRAM、同時に使うアプリのメモリも影響します。 特に unified memory 環境では「合計」ではなく「空きプール」で考えます。
確認シート(ご自身で埋める)
| 項目 | あなたの値 |
|---|---|
| 空きRAM(OS起動直後) | __ GB |
| 空きVRAM(GPUありの場合) | __ GB |
| 試したいモデル規模 | __ B |
| 量子化 | __(例: Q4_K_M) |
| コンテキスト長 | __(既定値から開始推奨) |
| GPUオフロード | __(full / 部分 / CPU) |
架空の数値は入れません。ご自身の環境の実測値を記入してください。
適用外と限界
- 本ページの数値は目安。精密値はモデル・量子化・ハードウェア・実装・設定に依存。
- 「計算バッファが○GB」等の固定値は使いません(環境依存)。
- unified memory と 専用VRAM では、余裕の計算が変わります。
- 常駐アプリ・ブラウザの消費も無視できません。実測値で判断。
よくある質問
- 「VRAM 8GB だと何Bまで?」
- 一概には言えませんが、7-8B の Q4_K_M 程度が現実的な目安です。メモリに余裕がなければ 3B クラスも選択肢に。
- 「システムRAM と VRAM、どちらが重要?」
- GPUで動かすなら VRAM がボトルネックになりやすいです。VRAM不足なら CPU/統合GPUへオフロードしますが、速度は落ちます。
- 「計算バッファは何GB?」
- 固定値ではなく、実装・設定・コンテキスト長で変わります。本サイトは固定係数を使わず、相対的な余裕で判断します。
- 「チェッカーの数字は正確?」
- 目安です。実際の使用量は環境で変わるため、まずは「動くか」を実測で確認するのが確実です。
更新履歴:2026-07-18 Pillar 拡張(unified/shared、消費要素、offload、decision tree、worksheet、限界を追加)。