• (转载)CUDA、tensorflow与cuDNN的版本匹配问题


    转载:https://blog.csdn.net/MahoneSun/article/details/80809042

    CUDA、tensorflow与cuDNN的版本匹配问题

    一、问题现象
    CUDA、tensorflow 与 cuDNN有版本匹配的问题,经常出现安装了某一版本的 CUDA 后,tensorflow 不支持相应版本的CUDA,或者tensorflow 支持 CUDA,但与 cuDNN版本不匹配,找不到这个那个文件,网上甚至有 CUDA装错等于重装的说法,很是麻烦。

    这里列举了一些我遇到过的错误(有的没有装cuDNN)

    CUDA9.2 + 1.8版本tensorflow
    
    ImportError: libcudnn.so.7: cannot open shared objectfile: No such file or directory
    
    CUDA9.2 +1.7版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    
    CUDA9.2 +1.6版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    
    CUDA9.2 +1.5版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    
    CUDA9.2 +1.3版本tensorflow
    
    ImportError: libcusolver.so.8.0: cannot open sharedobject file: No such file or directory
    
     
    
    DUDA9.0+ 1.8版本tensorflow
    
    ImportError: libcudnn.so.7: cannot open shared objectfile: No such file or directory
    
     
    
    CUDA 8.0+ 1.8版本tensorflow 
    
    ImportError: libcudnn.so.6: cannot open shared objectfile: No such file or directory
    
    CUDA 8.0+ 1.8版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    
    CUDA 8.0+ 1.7版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    
    CUDA 8.0+ 1.6版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    
    CUDA 8.0+ 1.5版本tensorflow
    
    ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
    

    二、问题分析
    大概总结了一下,以上错误有两种类型

    1、libcudnn.so.x 找不到的情况:没有装 cuDNN

    2、libcublas.so.x 找不到的情况:版本不匹配, CUDA与 cuDNN 或者tensorflow 版本不匹配,等等

    三、解决办法:
    根据现象和一些实际的验证操作,大概总结出以下安装方法比较靠谱,但由于时间关系没有作全系列的组合验证,可以作为参考:

    3.1 安装顺序

    先安装 CUDA,再安装 tensorflow ,最后安装 cuDNN,严格按照这个顺序装,可以避免返工,避免一步错就必须重装系统

    3.2 安装配置

    参照我的另一篇文章《Ubuntu 16.04+1080Ti机器学习基本环境配置》,安装以下软件

    A、先安装 CUDA,注意不要选择最新的 9.2 版本,因为 tensorflow 还不支持这个最新的版本,我们选择 9.0 版本的就好,

    B、安装tensorflow,同样参考上述文章,注意要先配置 pip源 。这里我们默认下载的最新版本是 1.8 版本的。

    C、最后安装 cuDNN

    四、验证
    4.1、确定大版本
    根据提示的错误信息,例如提示找不到 libcudnn.so.x 或者 libcublas.so.x,那么这个x代表的数字信息就是我们要安装的 cuDNN 的版本,

    4.2、确定大版本下的CUDA版本
    在https://developer.nvidia.com/rdp/cudnn-download下载对应的版本,先看上面说的大版本,再看对应的CUDA 版本,例如找不到libcudnn.so.7,则安装 v7 大版本的 cuDNN,而我们已经安装的CUDA版本是 CUDA9.0,所以我们应该下载v7 大版本下对应的 CUDA9.0版本,即DownloadcuDNN v7.1.4 (May 16, 2018), for CUDA 9.0版本,

    4.3、下载文件
    下载其下的cuDNN v7.1.4 Library for Linux

    安装完成后,验证方法参照上述提到的文章

    如此一般可以解决问题

    尊重劳动成果,转载请注明出处,本文链接:https://blog.csdn.net/MahoneSun/article/details/80809042

  • 相关阅读:
    VMware workstation安装Windows Server 2012 R2步骤详解(附下载链接)
    英文系统下Oracle SQL Developer 汉化
    C# .NET Core Linux、Windows统一文件路径解决方法
    C# DataTable 转JSON、List 转DataTable、DataTable转List
    IIS无法启动计算机上"."的服务W3SVC(World Wide Web 发布服务)正在停止
    SQLServer 数据库变成单个用户后无法访问的解决方法
    C# webform中无法获取修改后的textbox值
    SqlServer try catch 捕获触发器存储过程异常,结合 transaction 事务
    DataTable.Select筛选过滤数据返回DataRow[]转为DataTable添加到DataSet
    easyui datagrid checkbox复选框取消单击选中事件、初始全选全不选等问题解决
  • 原文地址:https://www.cnblogs.com/pprp/p/9470784.html
Copyright © 2020-2023  润新知