cuda入れようと思ったけどかなり苦戦した
機械学習系のことをやるためにcudaを入れようとしたらかなり苦戦したときのTipsまとめ.
まず大前提としてcuda入れるときの手順は
- nvidia関連(もちろんcuda含む)のドライバを全部消す.
- cudaインストール
という感じで最初に既存の環境を完全に削除しないとめんどくさいことになる.
そして僕の場合グラボ付きのノートPCでやってたんで RTX3060シリーズなんですけど,ドライバの自動インストールされたときの番号が違ってて混乱したのもあってめんどくさいことをしてしまっていました.
nvidia関連の削除
コマンドは↓
sudo apt-get --purge remove "*cuda*" "*cublas*" "*cufft*" "*cufile*" "*curand*" \
"*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*"
sudo apt-get --purge remove "*nvidia*" "libxnvctrl*"
sudo apt-get autoremove
ここのコマンドは公式ページから引っ張ってきてます.
他にも簡略化されたコマンドが出回ってましたが,なんかエラーはいて進めなくなってたので公式のこれが一番確実だとは思います.
ちなみにどんなエラーをはいていたかというと,
このサイトに書いてあるようなエラーでオーバーライトできないにゃといった内容のもの.解決策もサイト内に書いてありますが一応メモ↓
sudo dpkg -i --force-overwrite /var/cache/apt/archives/"エラーでオーバーライトできないって言われた.debファイル" # 例:nvidia-340_340.107-0ubuntu0~gpu18.04.1_amd64.deb
sudo apt -f install
このへんまでやったら一回reboot.
cudaのインストール
この記事を書いたときの最新は12.3だったのでそれのコマンドを掲載しとく.
バージョン指定したいときは最後のcuda-toolkit-12-3の数字を好きなバージョンに変えればよし.
一応バージョン12.3の公式(自分のインストールしたいバージョンのページを参照することをおすすめする.)
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-3
これでインストールするとnvidiaのドライバも自動でインストールされる.
一応この手順でエラーを出さなければcudaのインストールはできてるはず.
確認用のコマンドは↓
/usr/local/cuda/bin/nvcc -V #バージョン確認
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Mon_Apr__3_17:16:06_PDT_2023
Cuda compilation tools, release 12.1, V12.1.105
Build cuda_12.1.r12.1/compiler.32688072_0
私の場合12.1が入ってるのがわかります.いちいち/usr/local...とか打ちたくないならパスを通してください.
おまけ(PyTorchでちゃんと認識できてるかの確認)
私はPyTorchでcudaを使いたかったのでインストールしたので,ちゃんとそっちから認識できるか確認.仮想環境を立ち上げてから下のコマンドで認識できてるかわかる.
>>>import torch
>>>print(torch.cuda.is_available())
#True
Pythonの仮想環境に関してはこっちで説明してるので良ければ.