この記事のポイント
ollama psを実行すると PROCESSOR 列に100% GPUと表示され、GPUが使われているか一目でわかります- Ollama API の
GET /api/psをたたくとsize_vramフィールドでVRAM使用量を確認できます - NVIDIA GPU 環境では
nvidia-smi、AMD GPU ではrocm-smiでリアルタイム監視が可能です - GPU が使われていない場合は環境変数
CUDA_VISIBLE_DEVICESやOLLAMA_GPU_LAYERSの設定が原因のことが多いです - 実測では GPU(Metal)が CPU-only の約 2倍の推論速度(214 vs 107 tok/s)を記録しました
「Ollamaをインストールしたけど、本当にGPUを使っているのかわからない」という疑問はよくあります。コマンドが一応動いていても、実はCPUだけで動いている可能性があります。
結論から言うと、ollama ps コマンドを実行するとモデルのロード中に PROCESSOR 列が表示され、「100% GPU」と出ていればGPUが使われています。逆に「100% CPU」なら GPU は使われていません。
本記事では Ubuntu 24.04 LTS + Ollama 0.30.8 を対象に、GPU使用状況を確認する複数の方法を実際に実行した結果とともに解説します。
目次
- 方法1:ollama ps でGPU/CPUを確認する(最も簡単)
- 方法2:Ollama API(/api/ps)でJSON確認する
- 方法3:nvidia-smi でリアルタイム監視(NVIDIA GPU)
- 方法4:環境変数でGPU設定を確認する
- 方法5:ps aux で llama-server のGPUレイヤー数を確認する
- GPUあり vs CPUのみ 推論速度の実測比較
- GPUが使われていない場合の対処法
- まとめ
方法1:ollama ps でGPU/CPUを確認する(最も簡単)
Ollamaでモデルが動いているときに ollama ps を実行すると、現在ロードされているモデルの一覧と、どのプロセッサを使っているかが表示されます。
注意
ollama ps はモデルが実際にメモリにロードされているときのみ表示されます。モデルを使わずに数分放置すると自動でアンロードされ、空になります。確認するときは直前に ollama run <モデル名> を実行してください。
NAME ID SIZE PROCESSOR CONTEXT UNTIL
qwen2.5:0.5b a8b0c5157701 479 MB 100% GPU 4096 4 minutes from now

上の出力で注目するのは PROCESSOR 列です。
100% GPU→ GPUがフル活用されています100% CPU→ CPUのみで動いています(GPUが使われていない)75% GPU, 25% CPU→ GPUとCPUを分担(モデルが大きくてVRAMに収まりきらない状態)
Ubuntu 24.04 + NVIDIA GPU の環境でも同じコマンドが使えます。表示形式はまったく同じです。
方法2:Ollama API(/api/ps)でJSON確認する
Ollama は localhost:11434 でREST APIを提供しています。/api/ps エンドポイントをたたくと、現在ロードされているモデルの状態をJSONで取得できます。
{
“models”: [
{
“name”: “qwen2.5:0.5b”,
“model”: “qwen2.5:0.5b”,
“size”: 479954205,
“size_vram”: 479954205,
“context_length”: 4096,
“expires_at”: “2026-06-14T05:17:19Z”
}
]
}

ポイントは size_vram フィールドです。
size_vramとsizeが同じ値 → モデル全体がVRAMに乗っている(100% GPU)size_vramがsizeより小さい → GPUとCPUのハイブリッド(一部がRAMに)size_vramが 0 → CPUのみで動作中
この例では size・size_vram ともに 479,954,205 バイト(約 458 MB)で一致しており、モデルがVRAMに完全にロードされていることがわかります。
方法3:nvidia-smi でリアルタイム監視(NVIDIA GPU)
NVIDIA GPU を搭載した Linux 環境では nvidia-smi が最もわかりやすい確認方法です。Ubuntu 24.04 では nvidia-utils-550(現時点では自動的に最新版の 580 がインストールされます)パッケージで入ります。
(インストール中…実際には nvidia-utils-580 がインストールされます)
Unpacking nvidia-utils-580 (580.159.03-0ubuntu0.24.04.1) …
Setting up nvidia-utils-580 …
インストール後、watch コマンドと組み合わせるとOllamaがGPUを使っているかをリアルタイムで見られます。
NVIDIA GeForce RTX 4090, 87%, 12000 MiB, 24564 MiB
推論中に GPU 使用率(utilization.gpu)が 50〜100% になれば GPU が使われています。0% のまま推論が走っていれば CPU 動作です。
また、Ollama が CUDA を使っているかのバージョン確認も有効です。
+—————————————————————————–+
| NVIDIA-SMI 580.xx Driver Version: 580.xx CUDA Version: 12.x |
+—————————————————————————–+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. |
| 0 RTX 4090 Off | 00000000:01:00| Off | N/A |
+—————————————————————————–+
Docker コンテナでの確認
- Ubuntu 22.04 では
nvidia-utils-535系が最新です - Ubuntu 24.04 では
nvidia-utils-550を指定しても、apt が自動で最新版(580 等)を解決します - Docker コンテナ内では
nvidia-smiはインストールできてもGPUハードウェアにアクセスできません。GPU パススルーには--gpus allオプションが必要です
方法4:環境変数でGPU設定を確認する
Ollamaのログや設定ファイルではなく、環境変数でGPU利用を制御していることがあります。正しく動いていない場合は以下の変数を確認してください。
(何も表示されなければOK。”-1″ や “None” になっている場合はGPUが無効化されています)
$ echo $OLLAMA_GPU_LAYERS
(未設定ならOK。0になっているとCPU-onlyで動きます)
$ echo $OLLAMA_NUM_GPU
(未設定または正の数ならOK。0だとGPUを使いません)
環境変数の優先度はシェルで設定したものが最も高いため、~/.bashrc や ~/.profile にうっかり export CUDA_VISIBLE_DEVICES=-1 を書いていないか確認してみてください。

方法5:ps aux で llama-server のGPUレイヤー数を確認する
Ollamaは内部的に llama-server(旧 llama.cpp のサーバー)を使って推論を行います。このプロセスの起動オプションを見ると、GPUにオフロードしているレイヤー数(-ngl)を直接確認できます。
user 1234 … /path/to/llama-server –model … -ngl 99 –flash-attn auto …
(GPU使用時は -ngl が 33〜99 などの正の値になります)
-ngl(Number of GPU Layers)の値が意味するのは以下の通りです。
-ngl 0→ GPUを使っていない(CPU-only)-ngl 33〜-ngl 99→ モデルの層をGPUにオフロードしている(数値が大きいほどGPU依存)- Apple M1/M2/M3 の Metal GPU では通常
-ngl 99や大きな値が設定されます
実際に検証した環境では、Ollama アプリとして動いている llama-server プロセスに -ngl 0 のものと GPU 使用中のものが混在していることもあります。これは複数のモデルが並列で動いているときや、モデルサイズがVRAMを超えているときに起こります。
GPUあり vs CPUのみ 推論速度の実測比較
「GPU が使われているとどのくらい速くなるのか」を実際に計測しました。Ollama の Generate API(/api/generate)で options.num_gpu=0 を指定するとCPU-only モードで推論できます。

-d ‘{“model”:”qwen2.5:0.5b”,”prompt”:”Explain Linux in 2 sentences.”,”stream”:false}’ \
| python3 -c “import json,sys; d=json.load(sys.stdin); print(f’tok/s: {d[\”eval_count\”]/d[\”eval_duration\”]*1e9:.1f}’)”
tok/s: 214.4
$ curl -s http://localhost:11434/api/generate \
-d ‘{“model”:”qwen2.5:0.5b”,”prompt”:”Explain Linux in 2 sentences.”,”stream”:false,”options”:{“num_gpu”:0}}’ \
| python3 -c “import json,sys; d=json.load(sys.stdin); print(f’tok/s: {d[\”eval_count\”]/d[\”eval_duration\”]*1e9:.1f}’)”
tok/s: 107.1
計測結果をまとめると以下の通りです。
| モード | 推論速度(tok/s) | モデル | 環境 |
|---|---|---|---|
| GPU(Metal) | 214.4 tok/s | qwen2.5:0.5b | Apple M1 Max 32GB |
| CPU のみ(num_gpu=0) | 107.1 tok/s | qwen2.5:0.5b | Apple M1 Max 32GB |
GPU(Metal)を使うと CPU-only の約 2倍の速度(214.4 vs 107.1 tok/s)が出ました。Ollama 0.30.8 / qwen2.5:0.5b / 2026-06-14 実測です。
NVIDIA GPU(RTX 3060〜4090クラス)では、モデルサイズとVRAM容量にもよりますが、CPU-only の 3〜10倍速になることが多いです。GPUが正しく使われているかを確認することは、パフォーマンスに直結するため重要です。
GPUが使われていない場合の対処法
①CUDA ドライバ / ROCm が入っていない
NVIDIA GPU の場合、nvidia-smi が動かない環境では Ollama もGPUを認識できません。まずドライバの確認から始めます。
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver.
(この場合はドライバ再インストールが必要)
$ sudo ubuntu-drivers install
(Ubuntuが推奨ドライバを自動選択してインストール)
②環境変数が GPU を無効化している
CUDA_VISIBLE_DEVICES=-1 や OLLAMA_NUM_GPU=0 が設定されていると、ハードウェアがあってもGPUは使われません。
$ unset OLLAMA_NUM_GPU
$ systemctl restart ollama
(サービス再起動後に ollama ps で確認)
③モデルが大きすぎてVRAMに収まらない
ollama ps で 75% GPU, 25% CPU などと表示されている場合、モデルの一部がVRAMから溢れてRAMに退避しています。これは性能が落ちますが、動作はします。より小さいモデルか量子化レベルの低いモデル(Q4 → Q2など)を試すか、VRAMの多いGPUに移行する必要があります。
④Ollama のログを確認する
Ollama がGPUを認識したかどうかはサービス起動時のログに出力されます。
(systemd 環境の場合)
ollama[1234]: CUDA GPU id=0 library=/usr/lib/x86_64-linux-gnu/libcuda.so.1
ollama[1234]: name=”NVIDIA GeForce RTX 4090″ capability=8.9 total=”24.0 GiB”
(この行が出ていればGPU認識済み)

GPU認識に成功していれば CUDA GPU(NVIDIA)または ROCm GPU(AMD)の行がログに出ます。この行がなければドライバや環境変数に問題があります。
まとめ
OllamaがGPUを使っているかを確認する方法を5つ紹介しました。
ollama psの PROCESSOR 列が一番手軽で確実な確認方法です/api/psのsize_vramフィールドで VRAM 使用量も数値で確認できます- NVIDIA GPU 環境では
watch nvidia-smiでリアルタイム監視が最も視覚的にわかりやすいです - GPUが使われていない原因のほとんどは、ドライバ未インストールか環境変数の設定ミスです
- GPU を使うと CPU-only より実測で約2倍(Apple M1 Max の場合)〜10倍(NVIDIA RTX 系)の推論速度になります
Ollamaを本格的に使うなら、GPUが搭載されたVPSやクラウドサーバーを検討するのもおすすめです。
Ollamaのインストールから基本的な使い方は で解説しています。あわせてご覧ください。



コメント