zoukankan      html  css  js  c++  java
  • ubuntu/windows 安裝tensorflow-gpu dlib的那些坑

    本文不介绍配置环境和安装cuda相关信息。
    windows下面出现dll未加载,也是因为cuda和tensorflow-gpu版本不对应。

      File "C:PythonPython36libsite-packagesgoogleprotobufdescriptor.py", line 47, in <module>
        from google.protobuf.pyext import _message
    ImportError: DLL load failed: 找不到指定的程序。
    解决方案:(不要大于3.6.1)这是兼容性错误
    pip install protobuf==3.6.0
    

    首先如果您要使用Python3.7的的话(建议使用3.6),请使用cuda10及以上,这时候安装tensorflow-gpu 比较容易
    如果您使用的是cuda10以下请安装tensorflow-gpu<=1.12.0
    使用cuda的deb安装包,请您记得安装CUDA ,否则会出现dlib gpu加速无法使用。
    $ sudo apt-get install cuda
    安装tensorflow-gpu完成之后如果出现没有加载某些so文件,那就证明您的cuda版本和tensorflow-gpu版本不匹配

    Adding visible gpu devices: 0

    请切换到核显,并等待一会,可能对你没用,但我可以
    

    ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory

    请执行sudo apt-get install cuda
    

    could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR

    config = tf.ConfigProto()
    config.gpu_options.allow_growth = True
    sess = tf.Session(config=config)
    或者
    config = tf.ConfigProto()
    config.gpu_options.per_process_gpu_memory_fraction = 0.4
    session = tf.Session(config=config, ...)
    或者
    用root权限跑
    

    出现nvcc notfound 请执行sudo apt install nvidia-cuda-toolkit
    安装Dlib的时候出现cuDNN V5.0 OR GREATER NOT FOUND.
    整个目录中的include目录中的文件解压缩到/usr/local/include/目录下,lib64目录中的内容整个解压缩到/usr/lib/目录下,并且在/usr/local/lib/目录下建立libcudnn.so的软链接

    sudo ln -s /usr/lib/libcudnn.so /usr/local/lib/libcudnn.so
    

    本人折腾三天得出结论:

    python3.7 请使用tensorflow-gpu<1.13.0 cuda>=10 
    python3.6 请使用0.12.0=<tensorflow-gpu<=1.13.0  cuda<10
    python3.5 请使用tensorflow-gpu<1.13.0  cuda<10
    这是win下面一些版本呢,可以防止没有py36,
    主要tensorflow-gpu 12版本以前没有py37的库,这个人的git里面有编译好的py37版本
    https://github.com/fo40225/tensorflow-windows-wheel
    

    希望能交流更多技术,关注小白的微信公众号吧。
    在这里插入图片描述

    小白技术社
  • 相关阅读:
    es3的语法来模拟es5的bind方法
    js判断变量的类型(使用闭包来玩一把)
    获取一组时间中的最近的日期
    可以设置超时版的的fetch
    错误排查
    如何查看Linux的CPU负载
    shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
    Swoole server函数列表(转载)
    php的反射
    PHP共享内存
  • 原文地址:https://www.cnblogs.com/xbjss/p/13326679.html
Copyright © 2011-2022 走看看