不安装cudnn可不可以_win10+tensorflow-GPU+cuda10.0+cudnn7.41安装过程

本文详细介绍了在Windows 10环境下,如何安装Tensorflow-GPU版,配合CUDA 10.0和CUDNN 7.41。从检查显卡支持、下载安装CUDA,到处理CUDA与Visual Studio的兼容性问题,再到下载安装CUDNN并合并文件,最后配置环境变量,确保Tensorflow-GPU能正确运行。文章还提供了国内镜像源以加快pip安装速度,并提供测试安装成功的步骤。
摘要由CSDN通过智能技术生成

作为一个计算机视觉的忠实粉丝,运行及处理速度一直是最关心也是最让人头疼的问题,今天就来说说我的win10+tensorflow-GPU+cuda10.0+cudnn7.41安装过程,也是一段辛酸史,因为这对一个小白来讲真的痛苦到绝望。。

首先说明一下需要下载的东西:

1、cuda(版本需要结合你的计算机的显卡型号及计算能力)

2、cudnn它的下载完全是为了对cuda的补充而且不可或缺,也是需要与cuda版本相对应

正题:

cuda下载及安装+变量配置

你需要查看自己的电脑显卡型号下载支持的cuda版本与对应cudnn版本

选中此电脑-右击属性

官网的显卡型号是否支持查询网址:https://developer.nvidia.com/

关于计算机显卡NVIDIA的型号与计算能力如下:

一般情况下计算能力大于3.1的都可以

然后选择适合自己要安装的tensorflow-gpu版本的CUDA和cuDNN,这个一般在tensorflow官网查看信息(建议计算能力不高的电脑不选择高版本):

下载安装CUDA

进入网址:https://developer.nvidia.com/cuda-toolkit-archive

在其中找到自己需要的CUDA版本,比如你之前在Tensorflow官网找

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
中国邮递员问题是指在一个无向连通图中,寻找一条回路,使得每个顶点都被经过一次,同时回路的长度最短。 为了求解中国邮递员问题,我们可以使用Floyd算法来计算任意两个顶点之间的最短路径。然后,我们可以使用动态规划来计算所有顶点的奇偶度数的最小值(即最少需要添加多少条边才能使所有顶点的度数都变为偶数)。 最后,我们可以使用欧拉回路的算法来找到一个经过所有顶点的回路,使得回路的长度最短。 具体实现步骤可以参考以下代码: ```python import numpy as np # 计算任意两个顶点之间的最短路径 def floyd(graph): n = graph.shape[0] for k in range(n): for i in range(n): for j in range(n): if graph[i][j] > graph[i][k] + graph[k][j]: graph[i][j] = graph[i][k] + graph[k][j] # 计算所有顶点的奇偶度数的最小值 def dp(graph): n = graph.shape[0] dp = np.zeros((1 << n, n)) dp[1][0] = 0 for i in range(1, 1 << n): for j in range(n): if i & (1 << j): for k in range(n): if i & (1 << k) and k != j: if dp[i][j] == 0 or dp[i][j] > dp[i ^ (1 << j)][k] + graph[k][j]: dp[i][j] = dp[i ^ (1 << j)][k] + graph[k][j] return dp[(1 << n) - 1] # 找到经过所有顶点的回路,使得回路的长度最短 def euler(graph): n = graph.shape[0] odd_nodes = [i for i in range(n) if sum(graph[i]) % 2 == 1] if len(odd_nodes) == 0: start = 0 else: start = odd_nodes[0] stack = [start] path = [] while stack: node = stack[-1] if sum(graph[node]) == 0: path.append(stack.pop()) else: for i in range(n): if graph[node][i] > 0: graph[node][i] -= 1 graph[i][node] -= 1 stack.append(i) break return path[::-1] # 中国邮递员问题的解 def chinese_postman(graph): floyd(graph) dp_res = dp(graph) for i in range(len(dp_res)): dp_res[i] = int(dp_res[i]) for i in range(graph.shape[0]): for j in range(graph.shape[0]): if graph[i][j] == 1e9: continue graph[i][j] += dp_res[i] - dp_res[j] path = euler(graph) res = 0 for i in range(len(path) - 1): res += graph[path[i]][path[i + 1]] return res + dp_res[0] ``` 其中,graph是一个邻接矩阵,表示图中任意两个顶点之间的距离。函数chinese_postman返回的是中国邮递员问题的解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值