メインコンテンツへスキップ

ローカル LLM コーディング向け16GB GPUの選び方

9 分で読めますAIハードウェア

新しい16GB GPUならRTX 5070 Tiが速度と電力のbalanced choice。最終判断は、必要contextでtestを通るpatchを何件作れるかで行います。

ローカル LLM コーディング向け16GB GPUをVRAM、context、電力、repository testを通るpatchで比較する日本語インフォグラフィック。

16GBという条件を固定するなら、ローカルLLMコーディングの総合候補はGeForce RTX 5070 Tiです。NVIDIA公称で16GB GDDR7、256-bit、896 GB/s、TGP 300W。RTX 5080に近いmemory pathを持ちながら、同カードの360Wより低いpower classに収まります。

ただし、最初から5070 Tiに決める必要はありません。RTX 5060 Ti 16GBで実際のrepository taskが十分な速さで完了するなら、180W classと小さいsystem requirementの方が合理的です。RTX 5080は同じ16GBで待ち時間を短くするカードであり、長いcontextが原因のOOMを解消するカードではありません。

「最高」を三つに分ける

現在のNVIDIA公式比較から、購入判断に効く数値だけを取り出すと次の通りです。

判断候補公称memory pathReference power
価格・発熱を抑えたいRTX 5060 Ti 16GB128-bit、448 GB/s180W TGP
日常codingの総合候補RTX 5070 Ti 16GB256-bit、896 GB/s300W TGP
16GB内で最短の待ち時間を狙うRTX 5080 16GB256-bit、960 GB/s360W TGP
中古・値引きを検討RTX 4070 Ti SUPER256-bit、16GB GDDR6X285W TGP
旧high-endの値段が良いRTX 4080 / 4080 SUPER256-bit、16GB GDDR6X320W TGP

この表で分かるのはhardware envelopeです。特定modelのtok/sやpatch品質は分かりません。5060 Tiから5070 Tiでは公称bandwidthが大きく変わりますが、5070 Tiから5080では容量は増えず、bandwidthも896から960 GB/sへの変化です。5080の価格差は「追加モデル」ではなく「短縮できる待ち時間」に対して払います。

16GB GPUの公称spec、実運用context、accepted patch、電力、AMD対応と24GBへのstop ruleを整理した実践フレームワーク。

VRAMの合否はworking contextで決める

Model fileが16GB未満でも、runが16GBに収まるとは限りません。WeightsのほかにKV cache、compute buffer、runtime overhead、displayや別processの使用分が必要です。Quantization、model architecture、batch、parallel requestで残り容量も変わります。

Ollamaの現在のcontext length説明では、24 GiB未満のVRAMに対するdefaultは4Kです。Contextを大きくすると必要memoryも増えます。Active sessionで以下を確認します。

bash
ollama ps

見るのはPROCESSORCONTEXTです。短いpromptで100% GPUでも、複数file、tool output、test logを含めた時にCPU offloadされれば、その状態が本番です。

Contextは一度に最大へ上げず、三つのtaskで必要量を見ます。

  • 一つのfunctionと隣接testだけで完結する修正
  • 複数fileの呼び出し関係を追う通常変更
  • 長いlogやrepository ruleを含むdebugging

各runでpeak VRAM、offload/OOM、最初の有効出力までの時間、test完了までの時間、最終合否を保存します。16Kから32Kへ増やしても合格率が変わらず、memoryとlatencyだけ増えるなら32Kを常用する理由はありません。逆に16Kでは依存fileを落とし、32Kでtestが通るなら、その差がcontextの価値です。

Ollama FAQはparallel requestによってcontext allocationが増えることも説明しています。一人のeditor用結果をteam serverへ流用せず、実際のconcurrencyで再測定します。

Hardware benchmarkとcoding acceptanceを同じにしない

同じmodelの純粋なprompt processingとgenerationを比べるには、llama.cppのllama-benchが使えます。

bash
llama-bench -m model.gguf -p 2048 -n 256 -r 5 -o json

Model fileとchecksum、quantization、llama.cpp build、context、GPU offload、batch、sampling、concurrencyを固定します。複数回runし、平均だけでなくばらつきも見ます。ただし同toolの計測にはtokenizationとsamplingが含まれないため、これはcoding全体の所要時間ではありません。

購入判断では、先に「受け入れるpatch」を定義します。例えば固定commitから一件のparser bugを直し、対象moduleとtest以外は変更禁止、指定unit testとlintを実行するというtaskです。次をすべて満たしたrunだけをaccepted workにします。

  1. 要求されたbehaviorが再現可能に直る。
  2. 指定testとstatic checkがexit code 0になる。
  3. Diffが許可fileの外へ広がらない。
  4. 不要なdependency、generated file、大規模rewriteがない。
  5. 人がcore solutionを書き直さなくてよい。

小規模edit、multi-file変更、debuggingを少なくとも一つずつ用意し、全候補に同じtask setを渡します。失敗したattemptの時間も捨てません。

text
acceptance rate = accepted tasks / attempted tasks accepted tasks per hour = accepted tasks / total elapsed hours

生成が速くてもcontextを失って二度やり直せば、daily outputは低下します。ここで初めてGPUのspeedが実務の価値になります。

前提固定、context探索、benchmark、repository acceptance、電力測定、統合比較を順に行う16GB GPU選定ワークフロー。

Powerはtaskの開始からtest終了まで測る

TGPはPSU、cooling、case選びには有効ですが、PC全体のコンセント電力ではありません。CPU offloadはGPU powerを低く見せても、runを長くしてtotal energyを増やすことがあります。

NVIDIAではtask中に次をsampleできます。

bash
nvidia-smi \ --query-gpu=timestamp,memory.used,memory.total,power.draw,utilization.gpu \ --format=csv -l 1

電気代、室温、PSU loadが重要ならwall meterも使います。Request直前からrepository test終了までを一つの区間にし、idle時間を混ぜません。

text
energy_kWh = average wall watts × elapsed hours / 1000 accepted tasks per kWh = accepted tasks / energy_kWh

電気料金は契約で異なるため、自分の単価を使います。AIB modelごとのcard size、fan noise、power limitも販売品のspecで確認します。

RX 9060 XTはLinux stackを先に証明する

AMD公式のRX 9060 XT 16GBはGDDR6 16GB、最大320 GB/s、typical board power 160Wです。容量とpowerは魅力的ですが、specだけではcoding runtimeの互換性を保証しません。

Ollamaの現在のGPU supportはLinux ROCm一覧にRX 9060 XTを含める一方、native Windows一覧とdriver条件は別です。AMDのRadeon ROCm matrixもLinux、WSL、framework versionを分けています。購入前にexact OS、driver、runtime build、model format、context、editor integrationでsmoke taskを完了させます。CPU fallbackになる構成を、安価という理由だけで選んではいけません。

16GBを卒業する条件

NVIDIAのspecではRTX 3090は24GB、graphics card power 350Wです。中古価格が高速な16GB cardに近い場合、容量比較として意味があります。ただしmemory condition、cooling、PSU、保証を個体ごとに確認する必要があります。

  • 5060 Ti 16GBで全GPU fitし、accepted tasks/hourが目標を満たすなら低cost routeを選ぶ。
  • Fitするが待ち時間が作業を止めるなら、5070 Tiの差額を実測の時間短縮と比較する。
  • Fitしており一分の価値が高い時だけ、5080をspeed upgradeとして検討する。
  • 必要contextでoffload/OOMになるなら、24GBまたはhostedへ移る。

Hardware classを決めた後は、modelとquantizationを別に選びます。次の判断は16GB VRAM向けローカルcoding LLMガイドが担当します。Model rankingとGPU purchaseを分離すると、速い16GB cardを容量不足の解決策として買う失敗を避けられます。

#ローカルLLM#GPU#VRAM#AIコーディング#Ollama
Share: