ホーム > カテゴリ > Python・人工知能・Django >

Couldn't open CUDA library libcupti.so.9.0 [Docker/nvidia-docker2]

Python/TensorFlowの使い方(目次)

次のエラーは「libcupti.so.9.0」が読み込めない場合に発生します。

I tensorflow/stream_executor/dso_loader.cc:141] Couldn't open CUDA library libcupti.so.9.0. LD_LIBRARY_PATH: /usr/local/nvidia/lib:/usr/local/nvidia/lib64

CUDAライブラリ(libcupti.so.9.0)をオープンできませんでした。

F tensorflow/stream_executor/lib/statusor.cc:34] Attempting to fetch value instead of handling error Failed precondition: could not dlopen DSO: libcupti.so.9.0; dlerror: libcupti.so.9.0: cannot open shared object file: No such file or directory

libcupti.so.9.0が存在しないから動かないからね。

このエラーを解決するには環境変数のLD_LIBRARY_PATHに「libcupti.so.9.0」のファイルがあるパスを追加します。

対応方法

次のコマンドで環境変数を確認します。
※Dockerを使用している方は全てコンテナ上で実行。

私のLD_LIBRARY_PATHの環境変数は次のようになっています。

LD_LIBRARY_PATH="/usr/local/nvidia/lib:/usr/local/nvidia/lib64"

ここで定義されているパスには「libcupti.so.9.0」が存在しないのでエラーが発生しています。「libcupti.so.9.0」があるパスを探すと「/usr/local/cuda/extras/CUPTI/lib64」にあるのでこのパスを環境変数に追加します。

export LD_LIBRARY_PATH=/usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH

再度、

で確認すると

/usr/local/cuda/extras/CUPTI/lib64

が追加されているはずです。これでTensorFlowが動作します。





関連記事



公開日:2018年07月25日 最終更新日:2018年08月24日
記事NO:02705