はじめに
最近PyTorchで機械学習をかじっているのですが、メインPCはAMDのGPUを搭載しているため、CPUで学習を行っていました。
Geminiに相談してみたところ、古くてもNVIDIAのGPUでCUDAを使えば学習速度の向上を見込めるということだったので、古いマシンにCUDAを入れてみた備忘録です。
以下はGeminiのDeep Researchの回答をもとに作成しました。
環境
- CPU : intel Core i7 7700
- GPU : NVIDIA Gforce GTX 1060 6G
- RAM : 16G
- OS : Ubuntu 24.04
手順
ステップ1 : 最新のNVIDIAドライバーをインストールする
以下のコマンドを使用して、システムのハードウェアに最適な最新のドライバーをインストールします。
sudo ubuntu-drivers autoinstall
autoinstallコマンドは、UbuntuがハードウェアとSecure Bootの状態に基づいて推奨する最適なドライバーを自動的に選択します。
インストール完了後、システムを再起動してください。
ステップ2 : ドライバを除外してCUDA Toolkitをインストールする
まず、インストーラをダウンロードします。
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
次に、インストーラを実行します。
sudo sh cuda_11.8.0_520.61.05_linux.run --override
--overrideオプションについて
CUDA 11.8は、そのリリース時点よりも新しいUbuntu 24.04に搭載されているGCCバージョン13.3.0を公式にはサポートしていません 。
--overrideオプションは非対応のGCCバージョンに関するチェックを無効にします。
画面が以下まで進んだらDriverの選択を解除し、インストールを進めます。。
┌──────────────────────────────────────────────────────────────────────────────┐
│ CUDA Installer │
│ - [ ] Driver │
│ [ ] 520.61.05 │
│ + [X] CUDA Toolkit 11.8 │
│ [X] CUDA Demo Suite 11.8 │
│ [X] CUDA Documentation 11.8 │
│ - [ ] Kernel Objects │
│ [ ] nvidia-fs │
│ Options │
│ Install │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ Up/Down: Move | Left/Right: Expand | 'Enter': Select | 'A': Advanced options │
└──────────────────────────────────────────────────────────────────────────────┘
ステップ3:環境変数を設定する
インストール後、システムがCUDA Toolkitを認識できるように環境変数を設定します。
以下をお使いのシェル設定ファイルに追記します。
echo 'export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}' >> ~/.bashrc
設定を現在のターミナルセッションに反映させます。
source ~/.bashrc
インストールの確認
すべての手順が完了したら、以下のコマンドでNVIDIAドライバとCUDA Toolkitが正しくインストールされているかを確認します。
- NVIDIAドライバの確認
nvidia-smi
GPUの情報とともに、インストールしたドライバのバージョン(例:550.x)が表示されれば成功です。
- CUDA Toolkitの確認
nvcc --version
CUDAのバージョン(11.8)が表示されれば成功です。
まとめ
CUDA 11.8の対応OSにUbuntu 24.04は入っていませんが、インストールすることが出来ました。
インストーラを使う方法であれば、ほか世代のGPUにも任意のバージョンのCUDAを比較的簡単にインストールできるのではないでしょうか。