このポストを訪れた方々は、確実にGPUを活用したディープラーニング開発を始めたいと考えている方々でしょう。 この記事は、Ubuntu環境でCUDAを使用したGPU演算を準備する過程を整理した実践ガイドです。
特に初心者の方々が「私のPCにCUDAは正しくインストールされているのだろうか?」と確認したい場合に実践しやすい内容で構成しました。

CUDAが何であるかという概念から知りたい方は、以前のポストCUDAとは何か? GPUと並列計算の始まりを先にご覧になることをお勧めします。

NVIDIA driving CUDA supercar


1. なぜGPU環境を設定する必要があるのか?

AIモデルの学習は非常に多くの行列演算を要求します。
このような演算はCPUよりも並列演算に特化したGPUではるかに速く実行されます。

しかし、GPUがあるからといって終わりではありません。
オペレーティングシステムにGPUを認識させるためのドライバー
GPUで演算が可能にするためのCUDA
ディープラーニングに最適化されたライブラリcuDNN
この3つが正確にインストールされている必要があります。


2. 私のGPUの状態確認 - ドライバーとCUDAがあるのか?

nvidia-smi

これはGPUの現在の状態を示すツールです。
ここでCUDA Versionが表示され、GPUの名前が正確に出ていれば、
「GPUが正常に認識されており、ドライバーもインストールされている」ということを意味します。


3. CUDA開発ツール - nvccがなぜ必要なのか?

nvccはCUDAコード(.cu)をコンパイルするツールです。
例えるなら、CUDAを「実際に使うために」必要なコンパイラです。

sudo apt update
sudo apt install nvidia-cuda-toolkit
nvcc --version

4. cuDNN - ディープラーニング演算をGPUで高速に行う秘密兵器

cuDNNはディープラーニング演算を最適化するNVIDIAのディープラーニング専用高速数値演算ライブラリです。

ディープラーニングフレームワーク(PyTorch、TensorFlowなど)で使用される

  • Convolution
  • Pooling
  • RNN
  • LSTM
  • BatchNorm
  • Activationなどの演算をGPUで非常に迅速かつ効率的に計算できるようにします。

PyTorch、TensorFlowなどのディープラーニングフレームワークを使用する予定のある方には、本当に必須のライブラリです。

CUDAバージョンに合ったcuDNNパッケージをインストールすることで、フレームワークがGPUを効率的に利用できるようになります。

cuDNNパッケージはオペレーティングシステムやCPUアーキテクチャによってダウンロードパスが異なるため、ダウンロードする際は必ずNVIDIAの公式cuDNNダウンロードページにアクセスし、自分に合ったライブラリをダウンロードしてインストールしてください。

NVIDA cuDNNダウンロードリンク

上記のリンクからcuDNNをダウンロードする際には、最初にnvidia-smiで確認した自分のCUDAバージョンを確認し、適切なcuDNNをインストールしてください。


5. テスト - PythonでGPUが動作するか確認しよう

インストールが完了したら、適切に動作しているか確認してみましょう。

import torch
print(torch.cuda.is_available())          # True
print(torch.cuda.get_device_name(0))      # NVIDIA GeForce RTX  XXXX

6. まとめ

構成要素 Your Action Why you've done this
NVIDIAドライバー インストール状態確認 (nvidia-smi) GPUをシステムで認識させるため
CUDA Toolkit nvccのインストール CUDAコード実行のためのコンパイラ
cuDNN cudnn-cuda-12のインストール ディープラーニング演算最適化ライブラリ
PyTorchテスト GPU連携確認 実際に演算可能か検証するため

7. Jesseのまとめ

これであなたのシステムはGPU演算の準備が完了しました。
この環境をもとにWhisper、LLaMA、ChatGPTなど、さまざまなモデルをGPUで迅速に学習または実行できるようになるでしょう。