GPU環境の構築でこうした壁にぶつかるインフラエンジニアや自宅サーバー勢は、意外なほど多いものです。
この記事では、Ubuntu 24.04 LTSにNVIDIAドライバとCUDA Toolkitを導入し、OllamaのローカルLLMをGPU推論させるまでの手順を実機ベースで解説します。nvidia-smi認識・CUDAセットアップ・OllamaとのGPU連携確認まで、挫折しやすいポイントを正直に押さえます。Gemma 3やPhi-4をGPUで動かす実践例と、よくあるトラブルの対処法も含めます。
この記事のポイント
・nvidia-smi未認識の主因はドライバ未インストール。ubuntu-drivers autoinstallで解消できる
・CUDAはNVIDIA公式リポジトリ経由でインストールし、nvccコマンドで正常動作を確認する
・OllamaはCUDAが正しく入っていれば自動でGPU推論に切り替わる(設定変更は不要)
・VRAM 8GBならGemma 3:12bとGemma 3:4bが実用圏。Phi-4はVRAM 12GB以上が推奨
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
なぜGPUでローカルLLMを動かすのか|CPU推論との速度差
ローカルLLMをCPUだけで動かすことは、技術的には可能です。ただし、実際に使ってみると推論速度の遅さが作業効率を著しく損ないます。知人のインフラエンジニアが7Bパラメータのモデルをコアi7サーバーで動かしたところ、1トークン出力するのに3~5秒かかり「会話が成立する速度ではなかった」と話していました。GPUを使うと、この状況は一変します。VRAM 8GBのミドルレンジGPU(RTX 3060程度)でも、7Bクラスのモデルなら1トークンあたり50~80ミリ秒で推論できます。体感では「ほぼ即答」に近い応答速度です。30B~70Bの大型モデルを量子化して動かしても、CPU推論と比べて20倍以上の速度差が生まれます。
GPU推論を支えるのがNVIDIAのCUDA(Compute Unified Device Architecture)です。GPUの演算コアを並列に活用するための計算基盤であり、OllamaなどのLLMランタイムはCUDAを通じてGPUアクセラレーションを実現します。NVIDIAドライバとCUDA Toolkitが正しくインストールされていなければ、どれだけ高性能なGPUを搭載していても推論の恩恵は受けられません。
機密データを社内のローカル環境で処理したいという背景や、情シス担当が社内提案するための判断軸については、社内でChatGPTが使えないときの代替手段|機密データを守るローカルLLMという選択肢も参考にしてください。
GPU環境構築の前提確認|対応GPU・VRAMとUbuntuバージョン
手順を進める前に、環境の前提を整理します。本記事の手順はUbuntu 24.04 LTS(Noble Numbat)を対象にしています。Ubuntu 22.04 LTSでもほぼ同じ手順で対応できますが、パッケージ名やリポジトリのURLが一部異なる場合があります。1. Ubuntuのバージョンを確認する
以下のコマンドでOSバージョンを確認します。# Ubuntuバージョンの確認 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.1 LTS Release: 24.04 Codename: noble
2. GPU型番とVRAMを確認する
NVIDIAのGPUが認識されているか、以下のコマンドで確認します。# PCIeデバイス一覧からNVIDIA GPUを抽出 $ lspci | grep -i nvidia 01:00.0 VGA compatible controller: NVIDIA Corporation GA106 [GeForce RTX 3060] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GA106 High Definition Audio Controller (rev a1)
モデル選定においてVRAMが重要な理由は、動かせるモデルのパラメータサイズと直接対応するからです。VRAM 8GBであればGemma 3:4bやGemma 3:12bが実用圏に入ります。VRAM 12GB以上あればPhi-4も安定稼働します。Gemma 3・Phi-4・Mistral・Llama3.3のVRAM消費量や用途別の使い分けは、ローカルLLMのモデルを比較する方法|Llama3.3・Mistral・Gemma・Phi-4をUbuntuで使い分けるポイントで詳しく解説しています。
NVIDIAドライバのインストール手順(Ubuntu 24.04)
NVIDIAドライバは、GPUとOSが通信するための基盤ソフトウェアです。Ubuntuには`ubuntu-drivers`コマンドが用意されており、推奨ドライバを自動判定してインストールできます。手動でバージョンを調べる必要はありません。1. ubuntu-drivers-commonをインストールする
# パッケージリストを更新してubuntu-driversをインストール $ sudo apt update $ sudo apt install -y ubuntu-drivers-common
2. 利用可能なドライバを確認する
# GPU対応ドライバ一覧を表示 $ ubuntu-drivers devices == /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 == modalias : pci:v000010DEd00002504sv... vendor : NVIDIA Corporation model : GA106 [GeForce RTX 3060] driver : nvidia-driver-550 - distro non-free recommended driver : nvidia-driver-535 - distro non-free driver : xserver-xorg-video-nouveau - distro free builtin
3. 推奨ドライバをインストールして再起動する
# 推奨ドライバを自動インストール $ sudo ubuntu-drivers autoinstall # インストール完了後に再起動する $ sudo reboot
4. nvidia-smiでドライバの動作を確認する
再起動後、nvidia-smiコマンドでドライバのインストールを確認します。# NVIDIAドライバとGPU状態を確認 $ nvidia-smi +-----------------------------------------------------------------------------+ | NVIDIA-SMI 550.54.15 Driver Version: 550.54.15 CUDA Version: 12.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 NVIDIA GeForce RTX 3060 On | 00000000:01:00.0 Off | N/A | | 30% 35C P8 10W / 170W | 300MiB / 12288MiB | 0% Default | +-----------------------------------------------------------------------------+
CUDA Toolkitのインストールと環境変数の設定
nvidia-smiでドライバの動作を確認したら、次はCUDA Toolkitを導入します。OllamaがGPUを使って推論するにはCUDA Toolkitが必要です。NVIDIA公式リポジトリを追加してからaptでインストールするのが最も確実な方法です。1. NVIDIAの公式リポジトリを追加する
# NVIDIAのCUDAキーリングパッケージをダウンロード(Ubuntu 24.04対応版) $ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb # キーリングをインストール $ sudo dpkg -i cuda-keyring_1.1-1_all.deb # パッケージリストを更新してNVIDIAリポジトリを反映 $ sudo apt update
2. CUDA Toolkitをインストールする
# CUDA Toolkit 12.6をインストール $ sudo apt -y install cuda-toolkit-12-6
3. 環境変数を設定してnvccコマンドで確認する
CUDA Toolkitをインストールしても、PATHが通っていなければnvccコマンドが見つかりません。~/.bashrcに以下を追記します。# ~/.bashrcにCUDAのPATHを追記 $ echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc $ echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc $ source ~/.bashrc # nvccコマンドでCUDAバージョンを確認 $ nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2024 NVIDIA Corporation Built on Thu_Sep_12_02:18:05_PDT_2024 Cuda compilation tools, release 12.6, V12.6.77 Build cuda_12.6.r12.6/compiler.34841621_0
OllamaがGPUを認識しているか確認する方法
NVIDIAドライバとCUDA Toolkitが正しくインストールされていれば、Ollamaは起動時に自動でGPUを検出します。Ollamaのインストール自体がまだの場合は、Ubuntu ServerでローカルLLMを構築する方法|Ollamaで機密データを外に出さず業務AIを動かす完全ガイドを先に参照してください。1. Ollamaサービスを再起動する
ドライバやCUDAのインストール後にOllamaがすでに起動していた場合、一度サービスを再起動することでGPU認識が有効になります。# Ollamaサービスを再起動 $ sudo systemctl restart ollama # サービスの状態を確認 $ sudo systemctl status ollama * ollama.service - Ollama Service Loaded: loaded (/etc/systemd/system/ollama.service; enabled; preset: enabled) Active: active (running) since Thu 2026-06-19 10:30:15 JST; 3s ago Main PID: 12345 (ollama)
2. モデル実行中にnvidia-smiでGPU使用率を確認する
別のターミナルを開き、モデルを実行している間にnvidia-smiを監視します。# ターミナル1:モデルを起動 $ ollama run gemma3:4b # ターミナル2:GPUの使用状況を1秒おきに確認 $ watch -n 1 nvidia-smi +-----------------------------------------------------------------------------+ | NVIDIA-SMI 550.54.15 Driver Version: 550.54.15 CUDA Version: 12.4 | |===============================+======================+======================| | 0 NVIDIA GeForce RTX 3060 On | 00000000:01:00.0 Off | N/A | | 45% 52C P2 75W / 170W | 3456MiB / 12288MiB | 89% Default | +-----------------------------------------------------------------------------+
3. ollama psでPROCESSOR列を確認する
# ロードされているモデルとPROCESSOR(GPU/CPU)を確認 $ ollama ps NAME ID SIZE PROCESSOR UNTIL gemma3:4b a72c7f4d3796 3.3 GB 100% GPU 4 minutes from now
Gemma 3・Phi-4をGPUで動かす実践例
GPU環境が整ったら、実際にモデルを動かしてみましょう。モデルはVRAM容量に合わせて選びます。VRAMが足りないモデルを指定すると、OllamaはCPUにフォールバックするかエラーになります。・VRAM 8GB:Gemma 3:4b(約3.3GB)、Gemma 3:12b(約8.1GB)が実用圏
・VRAM 12GB以上:Phi-4(約9.1GB)も安定稼働できる
・VRAM 16GB以上:Gemma 3:27b(約18GB)や量子化Llama3.3も視野に入る
Ollamaでのモデル取得と実行は以下のように行います。
# Gemma 3:4b を取得して実行(VRAM 8GB未満でも動作する軽量モデル) $ ollama run gemma3:4b pulling manifest pulling 3c5f6f8e... 100% ████████ 3.3 GB/3.3 GB verifying sha256 digest writing manifest success >>> Linuxサーバーのメモリ監視で使うコマンドを教えてください freeコマンドとvmstatコマンドが基本です。free -hで使用量を... (GPU推論のため応答が高速) # Phi-4 を取得して実行(VRAM 12GB以上推奨) $ ollama run phi4
GPU推論が有効な状態では、Gemma 3:4bで1トークン55~70ms程度の速度が出ます。CPU推論(同環境で1トークン3~5秒)と比べると、体感での差は歴然です。現場で使うアシスタントとして十分な応答速度になります。
「nvidia-smi: command not found」「GPUが使われない」時の対処法
GPU環境構築でつまずく原因は、ほぼパターン化されています。よくある3つのケースごとに対処法を整理します。「nvidia-smi: command not found」が出る場合
このエラーはNVIDIAドライバがインストールされていないか、インストールが不完全な場合に発生します。まずドライバの状態を確認します。# インストール済みNVIDIAドライバを確認 $ dpkg -l | grep nvidia-driver (何も表示されない場合 → ドライバ未インストール) # 再度インストールを実行 $ sudo ubuntu-drivers autoinstall $ sudo reboot
Ollamaが「100% CPU」で動いている場合
`ollama ps`のPROCESSOR列が`100% CPU`になっている場合、以下の順で確認します。・nvccが通るか確認:`nvcc --version`を実行してCUDA Toolkitが正常に入っているか確認する
・Ollamaを再起動:`sudo systemctl restart ollama`を実行してからモデルを再実行する
・Ollamaのログを確認:GPU認識失敗の原因をログから特定する
# Ollamaのサービスログを確認(直近50行) $ journalctl -u ollama -n 50 --no-pager # 「cuda」「GPU」「library load failed」等のキーワードを探す # 「msg="no nvidia devices found"」が出る場合はドライバ問題
ドライバとCUDA Toolkitのバージョン不一致の場合
NVIDIAドライバとCUDA Toolkitにはバージョン対応関係があります。nvidia-smiの出力右上に表示される`CUDA Version`がドライバのサポート上限です。インストールしたCUDA Toolkitのバージョンがこの上限を超えていると、OllamaはGPUを使えなくなります。確認方法は単純です。`nvidia-smi`の`CUDA Version`(例:12.4)が`nvcc --version`の`release`(例:12.6)以上であれば問題ありません。逆転している場合は、ドライバを新しいバージョンに更新するか、CUDA Toolkitを対応バージョンに下げて再インストールします。ドライバ550系ならCUDA 12.4まで、ドライバ560系ならCUDA 12.6まで対応しています。
本記事のまとめ|GPU環境構築チェックリスト
Ubuntu ServerでローカルLLMをGPU推論させるには、ドライバ→CUDA Toolkit→Ollama再起動の順でセットアップし、各ステップを確認コマンドで検証するのが確実です。各項目の確認コマンドをまとめます。| 確認項目 | 確認コマンド | 期待する出力 |
|---|---|---|
| GPU認識 | lspci | grep -i nvidia |
NVIDIA GPU型番が表示される |
| ドライバ動作 | nvidia-smi |
Driver VersionとCUDA Versionが表示される |
| CUDA Toolkit | nvcc --version |
Cuda compilation tools, release X.X が表示される |
| OllamaのGPU使用 | ollama ps |
PROCESSOR列に「100% GPU」が表示される |
| 推論中のGPU使用率 | watch -n 1 nvidia-smi |
GPU-Utilが上昇し、VRAMに使用量が出る |
20年以上Linuxサーバーを現場で扱ってきた経験から言うと、GPU環境構築でつまずくインフラエンジニアの大半は「ドライバかCUDAのどちらかが抜けている」ケースです。nvidia-smiとnvccの両方が正常に動けば、Ollamaは特別な設定なしにGPUを使い始めます。
GPU環境が整ったら、次はモデルの使い分けです。Gemma 3・Mistral・Phi-4・Llama3.3のVRAM消費量や用途別の比較は、Gemma 3・Phi-4・Llama3.3・MistralをOllamaで実行するときのモデル選定ポイントで解説しています。
ローカルLLMのGPU環境を2日間で実装体験する
ドライバ・CUDAの設定を手順通りに進めても、環境によって動作が変わることがあります。実機GPU環境で手を動かしながら習得したい方向けに、「ローカルAIマスターセミナー」を開催しています。
少人数(最大8名)ZOOMハンズオン形式で実施しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:Ollamaをインストールする方法|Ubuntu・WSL2・Docker別の導入手順とモデル取得まで
- 前のページへ:ローカルLLMのモデルを比較する方法|Llama3.3・Mistral・Gemma・Phi-4をUbuntuで使い分けるポイント
- この記事の属するカテゴリ:ローカルLLMへ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます