この記事にたどり着いた方々は、きっとGPUを活用したディープラーニング開発を始めたいと考えていることでしょう。 この記事は、Ubuntu環境でCUDAを用いたGPU演算環境を構築するための実践ガイドです。 特に初心者の方々が**「私のPCにCUDAは正しくインストールされているのだろうか?」**と確認する際に、実践しやすい内容で構成しています。 CUDAの概念から知りたい方は、まず以前の投稿[CUDAとは何か? GPUと並列計算の始まり](whitedec/2025/4/20/cuda-parallel-computing-basics/)をご覧いただくことをお勧めします。 ![NVIDIA driving CUDA supercar](/media/whitedec/blog_img/nvidia_cuda_driving.webp) --- ### 1. なぜGPU環境を設定する必要があるのか? {#sec-d38fa2c24abf} AIモデルの学習には非常に多くの行列演算が必要となります。 このような演算はCPUよりも**並列演算に特化したGPU**のほうがはるかに高速に実行されます。 しかし、GPUがあるからといって、それだけで十分というわけではありません。 オペレーティングシステムにGPUを認識させるための**ドライバー**、 GPUで演算を可能にするための**CUDA**、 ディープラーニングに最適化されたライブラリ**cuDNN**、 この3つすべてが**正しくインストール**されている必要があります。 --- ### 2. 私のGPUの状態確認 - ドライバーとCUDAがあるのか? {#sec-574f0b3e4f0f} ``` nvidia-smi ``` これはGPUの現在の状態を示すツールです。 ここで**CUDA Version**が表示され、GPUの名前が正しく表示されていれば、 GPUが正常に認識され、ドライバーもインストールされていることを意味します。 --- ### 3. CUDA開発ツール - `nvcc`がなぜ必要なのか? {#sec-fdf5061569d3} `nvcc`はCUDAコード(.cu)をコンパイルするツールです。 例えるなら、CUDAを**「実際に使う」ために必要なコンパイラ**と言えるでしょう。 ``` sudo apt update sudo apt install nvidia-cuda-toolkit nvcc --version ``` --- ### 4. cuDNN - ディープラーニング演算をGPUで高速に行う秘密兵器 {#sec-251970f0279d} cuDNNはディープラーニング演算を最適化する、NVIDIAのディープラーニング専用高速数値演算ライブラリです。 **ディープラーニングフレームワーク(PyTorch、TensorFlowなど)**で使用される * Convolution * Pooling * RNN * LSTM * BatchNorm * Activationといった演算を、GPUで非常に迅速かつ効率的に計算できるようにします。 PyTorch、TensorFlowなどのディープラーニングフレームワークを使用する予定がある方にとっては、必須のライブラリです。 CUDAバージョンに合ったcuDNNパッケージをインストールすることで、フレームワークがGPUを効率的に利用できるようになります。 cuDNNパッケージはオペレーティングシステムやCPUアーキテクチャによってダウンロード先が異なるため、ダウンロードする際は必ずNVIDIAの公式cuDNNダウンロードページにアクセスし、ご自身の環境に合ったライブラリをダウンロードし、インストールしてください。 [NVIDA cuDNNダウンロードリンク](https://developer.nvidia.com/cudnn) 上記のリンクから`cuDNN`をダウンロードする際は、**最初にnvidia-smiで確認したご自身のCUDAバージョンを確認**し、適切なcuDNNをインストールしてください。 --- ### 5. テスト - PythonでGPUが動作するか確認しよう {#sec-4696d20ff7c8} インストールが完了したら、正しく動作しているか確認してみましょう。 ``` import torch print(torch.cuda.is_available()) # True print(torch.cuda.get_device_name(0)) # NVIDIA GeForce RTX XXXX ``` --- ### 6. まとめ {#sec-de73682205f5} | 構成要素 | 実施内容 | 目的 | | --- | --- | --- | | NVIDIAドライバー | インストール状態確認 (`nvidia-smi`) | GPUをシステムで認識させるため | | CUDA Toolkit | `nvcc`のインストール | CUDAコード実行のためのコンパイラ | | cuDNN | `cudnn-cuda-12`のインストール | ディープラーニング演算最適化ライブラリ | | PyTorchテスト | GPU連携確認 | 実際に演算可能か検証するため | --- ### 7. まとめ {#sec-8890498151de} これで、あなたのシステムはGPU演算の準備が整いました。 この環境があれば、Whisper、LLaMA、ChatGPTなど、さまざまなモデルをGPUで迅速に学習・実行できるようになるでしょう。