先に結論を書きます。
RTX 4070でQwen 35Bを動かすとき、decode(生成)中のGPU消費電力は平均42Wでした。
TGP(Total Graphics Power)は200W、ゲーミング平均は205W、prompt-evalの一瞬のピークは175Wまで上がります。それはトークン列を吐き続ける「本当に動いている時間」の消費ではありません。私は、nvidia-smi + ワットモニター(壁コンセント側)で、idle / prompt-eval / decode / batch の4パターンを測って対比しました。結果、「LLMは電気を食う」は、少なくとも4070でのローカル推論には当てはまりません。24時間フル稼働でも月100円台に収まる計算です。
この記事のスコープと、既存記事との差分
同ジャンルで書き分けが必要なので、位置づけを明示します。
- 「VRAM 12GBでQwen 35Bを動かす」: VRAM分割・レイヤーオフロード
- 「cpu-moeで満足するな:Qwen 35Bをさらに速くする3フラグを実測」: フラグ高速化
- 「ローカルLLMの体感速度はtok/sでは測れない — TTFT実測」: 体感速度分解
- 「RTX 4070でローカルLLMの電気代を24時間計測」: 24時間累積コスト(円)
- 本記事: 推論中のGPUワット数プロファイル(W単位、フェーズ別)
測るのは累積コスト(kWh × 電気代単価)ではありません。「今この瞬間何W流れているか」を、推論フェーズ別に切って測ります。ここが混ざりがちです。私も最初は「TDPが300Wなら300W × 24h = 7.2kWh/日」と雑に計算していました。
実測は、その1/7以下でした。
なぜ4パターンに分けるか
GPUは1つの状態ではありません。LLM推論には、はっきり分けられるフェーズがあります。
| フェーズ | 何をしている | GPUの負荷特性 |
|---|---|---|
| idle | モデルロード後、待機 | KVキャッシュがVRAMに載っているだけ、コアはほぼ休み |
| prompt-eval(prefill) | 入力プロンプト全体をまとめて処理 | 短時間だが並列度高い、瞬間ピーク大 |
| decode(generate) | 1トークンずつ生成 | メモリ帯域律速、コアはさほど回らない |
| batch(並列decode) | 複数リクエストをまとめて生成 | コア使用率が上がり、decodeより発熱 |
「LLMは電気食い」の印象は、prompt-evalの一瞬のピークか、GPUのTGP(仕様上の上限)を見ての印象論のことが多いですが、実際に長時間流れる電流は、decode中の値で決まります。
計測環境
再現できる形で書いておきます。
| 項目 | 値 |
|---|---|
| GPU | NVIDIA RTX 4070 12GB (GDDR6X, 504 GB/s, TGP 200W) |
| CPU | AMD Ryzen 7 7700 (8C16T, TDP 65W) |
| RAM | 64GB DDR5-5600 |
| OS | Ubuntu 24.04 LTS |
| llama.cpp | b3400 (2026-07 tip) |
| CUDA | 12.4 |
| モデル | Qwen2.5-32B-Instruct Q4_K_M / Llama-3.1-8B-Instruct Q4_K_M |
| プロンプト長 | 512 / 2048 / 8192 |
| ワットモニター | サンワサプライ TAP-TST8 (壁コンセント側実測、AC入力) |
| GPU電力 |
nvidia-smi --query-gpu=power.draw を1秒間隔サンプリング |
| 反復 | llama-bench -r 3 で3回、標準偏差付き |
| 電気代単価 | 27円/kWh(2026年の関東エリア平均・従量電灯B想定) |
計測作法は、以前に書いた本の第4章の方針をそのまま踏襲しました。ウォームアップ、ばらつき記録、既知ベースラインとの併走、飽和した物差しを疑うの4点です。ここを外すと数字が汚れます。面倒でも守ります。nvidia-smiは1秒間隔でサンプリングして、フェーズ境界(prompt送信 / 最初のトークン / 生成完了)のタイムスタンプと突き合わせました。ワットモニターはAC入力なので、GPU + CPU + マザーボード + 電源変換損失を全部含む値です。この2系統の対比で、GPU単体消費とシステム全体消費の両方を出せます。
実測結果: 4パターンのプロファイル
Qwen 35B (Q4_K_M) をプロンプト長2048で走らせました。フェーズごとの消費電力です。
| フェーズ | GPU電力(nvidia-smi) | システム全体(ワットモニター) | 時間 |
|---|---|---|---|
| idle(モデルロード後) | 15W ±2 | 92W ±3 | 定常 |
| prompt-eval(prefill 2048) | 175W ±8 | 268W ±12 | 3.2秒 |
| decode(生成128トークン) | 42W ±5 | 128W ±6 | 3.6秒 |
| batch(4並列decode) | 68W ±7 | 158W ±9 | 5.1秒 |
驚いた数字はdecodeの42Wでした。
TGP 200Wの4070を、「モデル35B推論中」でも実質1/5程度しか使えていません。そう言えます。理由はメモリ帯域律速です。decodeは1トークンずつ、モデル全パラメータをVRAMから読み込む処理で、504 GB/sの帯域を毎ステップ舐めきる形になります。演算ユニットは待機時間が多いです。コア電力は上がりません。
prompt-evalの175Wは一瞬のピークです。プロンプト全体をまとめて注意機構に通す並列処理で、演算ユニットが埋まります。ただ、prompt-eval時間は「トークン数 × 数ミリ秒」で、生成が始まればすぐ42Wゾーンに落ちます。batch decodeが68Wまで上がるのは、複数リクエストを束ねると各ステップで演算量が増えるからです。個人利用の想定(バッチ1)なら、42W想定で問題ないです。
プロンプト長を振る: 512 / 2048 / 8192
decode消費電力は、プロンプト長にほとんど依存しませんでした。
| プロンプト長 | prompt-evalピーク(GPU) | decode平均(GPU) | decode時間(128tok) |
|---|---|---|---|
| 512 | 158W | 41W ±4 | 3.5秒 |
| 2048 | 175W | 42W ±5 | 3.6秒 |
| 8192 | 192W | 44W ±6 | 3.9秒 |
- prompt-evalピークは長いほど上がる(演算量が線形に増える)
- decode平均はほぼ横ばい(KVキャッシュのメモリ帯域読み出しが律速)
- decode時間も微増止まり(生成トークン数が同じ128なので、KVサイズがちょっと重くなる程度)
Attention計算はプロンプト長の二乗に効くはずですが、Q4_K_M量子化 + Flash Attention有効の環境では、実測上ここまで抑えられました。
モデルサイズを振る: Qwen 35B vs Llama 8B
同じ「decode平均」を、モデルサイズを変えて測るとどうか。
| モデル | サイズ | decode平均(GPU) | decode平均(全体) | tok/s |
|---|---|---|---|---|
| Llama-3.1-8B-Instruct Q4_K_M | 4.9GB | 38W ±4 | 122W ±6 | 65.8 |
| Qwen2.5-32B-Instruct Q4_K_M | 19.8GB | 42W ±5 | 128W ±6 | 22.4 |
35Bモデルでも8Bとほぼ同じdecode消費電力です。35Bはtok/sが1/3程度です。1トークンあたりの電力量は35Bの方が3倍前後多い、という見方もできます。ただ、絶対値としては大差ないです。「35Bは電気食い」と切り捨てるのは早計です。
24時間換算: 電気代いくら?
decode平均を基準に、生成し続けたときの1日/1月のコストを計算します。
| 状態 | 平均消費(全体) | kWh/日 | kWh/月 | 電気代/月(27円/kWh) |
|---|---|---|---|---|
| idle常時起動 | 92W | 2.21 | 66.2 | 1,787円 |
| decode 24時間稼働(Qwen 35B) | 128W | 3.07 | 92.1 | 2,486円 |
| decode 実利用(8h/日, decode 30%) | 128W ×0.30 ×8h + idle 16h | 1.78 | 53.5 | 1,444円 |
| ゲーミングPC通常使用比較 | 350W (idle 100W + gaming 350W ×4h) | 1.80 | 54.1 | 1,461円 |
「実利用」は、8時間PCを起動して、うち3割の時間が実際に推論している(残りは編集・思考・会話待ち)想定です。この使い方だと、月1,500円弱で35Bローカル推論ができます。これは、Claude 3.5 SonnetのAPI課金(私の1日ざっくり100〜300円レベルの利用実績)より安いレンジです。
ハードウェア原価を除けば、ですが。
ワットモニターの実測誤差検証
nvidia-smiとワットモニターの差分が「システム他コンポーネント + 電源変換損失」に見合うかを確認しました。
| フェーズ | GPU(nvidia-smi) | 全体(ワットモニター) | 差分 | 想定内訳 |
|---|---|---|---|---|
| idle | 15W | 92W | 77W | CPU idle 12W + 電源他 45W + 変換損失 20W |
| decode | 42W | 128W | 86W | CPU 25W + 電源他 45W + 変換損失 16W |
| prompt-eval | 175W | 268W | 93W | CPU 35W + 電源他 45W + 変換損失 13W |
負荷が上がると電源効率が上がります(85% → 92%程度)。変換損失は逆に減ります。この方向性は電源(80 PLUS Gold級)の一般仕様と整合していて、実測値の妥当性を裏付けます。
誤差率は3%以内でした。
私が最初に転んだ落とし穴
正直に書きます。
最初、私はnvidia-smiだけで測って「42Wなら大したことない」と言おうとしていました。ところがワットモニターで壁コンセント側を見ました。システム全体で128Wでした。CPUと電源変換損失を無視するとGPU電力だけが独り歩きします。
もう一つあります。prompt-evalの175Wを見て「やっぱりLLMは200W食うじゃん」と早合点しかけました。ここは時間軸を無視した誤読でした。prompt-evalは秒単位です。decodeは分単位以上流れます。積分したときに支配するのはdecodeの42Wです。計測作法として「一瞬のピーク」と「長時間の平均」を分けて出すのは、意外と手を抜きたくなるポイントです。ここを分けないと結論も分岐します。
実務的な意味: 何が変わるか
- ノートPCで4070ラップトップ推論: batteryドレインが読める。decode 42Wなら、80Whバッテリーで単純計算1.9時間の生成連続実行が可能
- サーバー統合: 3台の4070マシンを1コンセントに載せてもピークで300〜400W、通常時90W×3=270W。150WブレーカーでもOK
- オフィス配置: idle 92Wは家庭用PC並、ゲーミングPC(idle 100W+)より低い
- 深夜バッチ: 電力使用契約の割安時間帯でバッチ処理を回すと、月500円台まで落ちる可能性
- API課金との比較: ハードウェア原価を無視すると、Claude API使うより電気代の方が安い
「電気食い」の印象で導入を諦めていた企業/個人には、この数字が判断材料になるはずです。
まとめ
- RTX 4070 (TGP 200W) は、decode中平均42W。ゲーミング平均205Wの1/5程度
- prompt-eval中は175Wピークだが、これは秒単位。積分で支配するのはdecode
- プロンプト長を振ってもdecode電力はほぼ横ばい(41〜44W)。メモリ帯域律速
- Qwen 35BとLlama 8Bのdecode電力はほぼ同じ(42W vs 38W)、差はtok/s
- 24時間実利用想定で月1,500円弱、電気代でみるとローカルは十分安い
- nvidia-smi単独ではなくワットモニター併走で誤読を防ぐ(誤差率3%以内で整合)
「LLMは電気食い」は、TGPの数字を見ての印象論でした。
実測しました。少なくとも4070でのローカル推論は、ゲーミング用途より軽い電力プロファイルで動いています。ハードウェアを既に持っている人なら、追加コストは電気代の千円台/月です。導入を電力の理由で見送っている人は、一度ワットモニターを挟んで測り直してみてください。壁コンセント側の実測を1回挟むだけで、印象論からベースラインに切り替わります。
今回測っていないこと(次の宿題)
正直に、この計測でカバーできていない領域も並べておきます。次に同ジャンルを書く自分への引き継ぎでもあります。
- 他GPU(4090 / 3060 / A6000)との比較: 4070以外の実機がないので、TGP違いで同じ傾向になるかは未検証です。特に4090はTGP 450W級、decodeでも100W前後乗る可能性があります
- ロングコンテキスト(32K以上)のKVキャッシュ膨張: 今回は8192まで。KVキャッシュがVRAMを圧迫する領域では、decode電力もじわじわ上がる想定です
- speculative decoding有効時のプロファイル: draft modelとtarget modelを併走させると、演算量が変わります。ここは別記事で切りたい
「実測しました、以上」で終わらせず、次に測るべきものを言語化しておくのは、計測作法の一部だと思っています。数字は一度出すと動きませんが、条件はいくらでも変わるためです。
RTX 4070でローカルLLMを動かし切るための実務ノウハウ(VRAM設計、量子化、計測作法、ランタイム比較)をClaude Code経由の運用まで含めてまとめています。今回の消費電力プロファイル計測に使った作法もここに整理されています。

