Could not load dynamic library 'cudart64_101.dll' on tensorflow CPU-only installation

前端 未结 13 1527
隐瞒了意图╮
隐瞒了意图╮ 2020-11-28 04:02

I just installed the latest version of Tensorflow via pip install tensorflow and whenever I run a program, I get the log message:

W tenso

相关标签:
13条回答
  • 2020-11-28 04:46

    If you are using Windows:

    a. Downloaded missing dll's from https://www.dll-files.com/

    b. Copy paste in C:\Windows\System32

    The code will pick the files from c:\windows\system32 which always remains in the path.

    0 讨论(0)
  • 2020-11-28 04:48

    In my case the tensorflow install was looking for cudart64_101.dll

    The 101 part of cudart64_101 is the Cuda version - here 101 = 10.1

    I had downloaded 11.x, so the version of cudart64 on my system was cudart64_110.dll

    This is the wrong file!! cudart64_101.dll ≠ cudart64_110.dll

    Solution

    Download Cuda 10.1 from https://developer.nvidia.com/

    Install (mine crashes with NSight Visual Studio Integration, so I switched that off)

    When the install has finished you should have a Cuda 10.1 folder, and in the bin the dll the system was complaining about being missing

    Check that the path to the 10.1 bin folder is registered as a system environmental variable, so it will be checked when loading the library

    You may need a reboot if the path is not picked up by the system straight away

    0 讨论(0)
  • 2020-11-28 04:55

    Tensorflow 2.1+

    What's going on?

    With the new Tensorflow 2.1 release, the default tensorflow pip package contains both CPU and GPU versions of TF. In previous TF versions, not finding the CUDA libraries would emit an error and raise an exception, while now the library dynamically searches for the correct CUDA version and, if it doesn't find it, emits the warning (The W in the beginning stands for warnings, errors have an E (or F for fatal errors) and falls back to CPU-only mode. In fact, this is also written in the log as an info message right after the warning (do note that if you have a higher minimum log level that the default, you might not see info messages). The full log is (emphasis mine):

    2020-01-20 12:27:44.554767: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found

    2020-01-20 12:27:44.554964: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.

    Should I worry? How do I fix it?

    If you don't have a CUDA-enabled GPU on your machine, or if you don't care about not having GPU acceleration, no need to worry. If, on the other hand, you installed tensorflow and wanted GPU acceleration, check your CUDA installation (TF 2.1 requires CUDA 10.1, not 10.2 or 10.0).

    If you just want to get rid of the warning, you can adapt TF's logging level to suppress warnings, but that might be overkill, as it will silence all warnings.


    Tensorflow 1.X or 2.0:

    Your CUDA setup is broken, ensure you have the correct version installed.

    0 讨论(0)
  • 2020-11-28 04:55

    I solved this another way. First of all I installed cuda 10.1 toolkit from this link

    Where i selected installer type(exe(local)) and installed 10.1 in custom mode means (without visual studio integration, NVIDIA PhysX because previously I installed CUDA 10.2 so required dependencies were installed automatically)

    After installation, From the Following Path (C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin) , in my case, I copied 'cudart64_101.dll' file and pasted in (C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin).

    Then importing Tensorflow worked smoothly.

    N.B. Sorry for Bad English

    0 讨论(0)
  • 2020-11-28 04:57

    In a conda environment, this is what solved my problem (I was missing cudart64-100.dll:

    1. Downloaded it from dll-files.com/CUDART64_100.DLL

    2. Put it in my conda environment at C:\Users\<user>\Anaconda3\envs\<env name>\Library\bin

    That's all it took! You can double check if it's working:

    import tensorflow as tf
    tf.config.experimental.list_physical_devices('GPU')
    
    0 讨论(0)
  • 2020-11-28 04:57

    Tensorflow gpu 2.2 and 2.3 nightly

    (along CUDA Toolkit 11.0 RC)

    To solve the same issue as OP, I just had to find cudart64_101.dll on my disk (in my case C:\Program Files\NVIDIA Corporation\NvStreamSrv) and add it as variable environment (that is add value C:\Program Files\NVIDIA\Corporation\NvStreamSrv)cudart64_101.dll to user's environment variable Path).

    0 讨论(0)
提交回复
热议问题