web-dev-qa-db-ja.com

CUDAバージョンを変更する方法

変更されたcaffeバージョンをコンパイルすると、このエラーが発生しました。

OpenCV static library was compiled with CUDA 7.5 support. Please, use the same version or rebuild OpenCV with CUDA 8.0

CUDA8.0と互換性のない古いコードがあるため、このエラーのcudaバージョンを変更したいです。

〜/ .bash_profileを次のように変更しました

# export PYTHONPATH=$PYTHONPATH:/usr/local/cuda-8.0/lib64/
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
export PYTHONPATH=$PYTHONPATH:/usr/local/cuda-7.5/targets/x86_64-linux/lib/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-7.5/targets/x86_64-linux/lib/

しかし、うまくいきませんでした。それでも同じエラー。私は何をすべきか?ありがとう。

13
baNv

CUDAソフトリンクを変更して、目的のCUDAバージョンを指すようにします。例えば:

ll/usr/local/cuda lrwxrwxrwx 1 root root 19 Sep 06 2017/usr/local/cuda-> /usr/local/cuda-8.0/

単にそれを再リンクする

ln -s /usr/local/cuda-7.5/usr/local/cuda

(適切な設置場所で)

9
rkellerm

少し遅れるかもしれませんが、この質問に出くわした人にとってはまだ役立つと思いました。現在のbashセッション内で異なるバージョンのCUDAに切り替えるための簡単なbashスクリプトを書きましたhttps://github.com/phohenecker/switch-cuda

2
pho7

私は最終的に問題を解決しました。

〜/ .bash_profileを変更してCUDAへのパスを変更するのが正しい方法です。しかし、ファイルを変更したときは、bashを再起動する必要があります。

単にsource ~/.bash_profileは機能しません。 sourceはファイル内のコンテンツを、既存のパスにカバーするのではなく、追加するだけだからです。

1
baNv