web-dev-qa-db-ja.com

Arch Linuxでcuda 10.0にダウングレードする方法は?

Tensorflowはcuda 10.0のみを必要とするため、Arch Linuxでcuda 10.1をcuda 10.0にダウングレードしたいと思います。

Arch LinuxのCUDA 10.1にtensorflowをインストールしましたが、tensorflow-gpuにCUDA 10.0以下が必要であることを知りませんでした。

必要な10.0ライブラリを新しい10.1ライブラリにシンボリックリンクで試しましたが、機能しませんでした。

pythonでテンソルフローをインポートしようとするたびに、コンソールエラーで「libcublas.so.10.0」が見つからないことが表示されます。

そのため、CUDA 10.0でのみtensorflowを実行できることがわかり、CUDAをダウングレードしたいと思います。しかし、私はArch Linuxでそれをどのように行うか考えていません。

実行するたびにimport tensorflowこのエラーが発生します。

Traceback (most recent call last):
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/usr/lib/python3.7/imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "/usr/lib/python3.7/imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: /usr/lib/libcublas.so.10.0: version `libcublas.so.10.0' not found (required by /home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/usr/lib/python3.7/imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "/usr/lib/python3.7/imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: /usr/lib/libcublas.so.10.0: version `libcublas.so.10.0' not found (required by /home/techievin/.local/lib/python3.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so)


Failed to load the native TensorFlow runtime.

pacman -S cuda=="10.0" 動かない。

私はどこでも検索しましたが、Arch LinuxがCUDA 10.0にダウングレードするための適切な答えを見つけることができませんでした

7
TechieViN

同じ問題に直面していて、古いgtx670を使用していたときに使用した方法を再適用する必要があります。

  1. cudaパッケージをダウングレード
  2. アップグレードされないようにする

特定のCudaバージョンには特定のnvidiaドライバーが必要であることに注意してください。

互換性マトリックス を見て、最終的にはドライバーのアップグレードも防止します。

1
EdoardoG