error retrieving driver version: Unimplemented: kernel reported driver version not implemented on Wi

博主分享了在Windows环境下配置TensorFlow GPU版本的过程及遇到的版本兼容性问题。通过更换cuDNN版本解决了运行时的错误,显著提升了训练速度。

关注Tesorflow很久了,但是一直处于搭建环境阶段,说实话国内搞Tesorflow难度还是有点坑的,资料需要fq,下载更新需要fq,搜索看教程还需要fq。关键是Tesorflow本身也有很多问题,版本必须搭配才可以,这次我就遇到了版本的问题。

以前是在mac上跑了一个小例子。跑通了,但是很慢,而且是我公司开发的mac,被我跑的呼呼响,我还是挺心疼的。据说GPU版本的比较快,所以我就在自己的神船上搭建了一下环境

设备:
window10
i7
GTX960M

官方安装教程看这里:https://www.tensorflow.org/install/install_windows
CUDA9.0
cudnn7.1
然后就出了下面的问题:

2018-04-08 21:49:36.244256: E T:\src\github\tensorflow\tensorflow\stream_executor\cuda\cuda_dnn.cc:396] Loaded runtime CuDNN library: 7102 (compatibility version 7100) but source was compiled with 7003 (compatibility version 7000). If using a binary install, upgrade your CuDNN library to match. If building from sources, make sure the library loaded at runtime matches a compatible version specified during compile configuration.
2018-04-08 21:49:36.256412: F T:\src\github\tensorflow\tensorflow\core\kernels\conv_ops.cc:712] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo(), &algorithms)

我看了下注释,感觉到是版本不匹配,提示说源码是在7003版本编译的,但是我的是7102,所以我又去https://developer.nvidia.com/rdp/cudnn-download这里,下载了一个

这里写图片描述

老版本的cudnn,然后顺利编译,速度确实比我用mac的cpu跑得快,大概几分钟就完成了,mac当时好像跑了一两个小时

你遇到的错误: ``` consul members Error retrieving members: Unexpected response code: 403 (ACL not found) ``` 表示你尝试执行 `consul members` 命令时,Consul 服务器返回了 403 错误,并提示 **ACL not found**,说明当前启用了 ACL(访问控制列表)机制,但未正确配置默认策略或缺少必要的 Token 权限。 --- ### 🔍 错误原因分析: 1. **ACL 已启用但未初始化**: - Consul 配置中启用了 ACL(在配置文件中设置了 `acl = { ... }`),但尚未创建初始 ACL 策略和 Token。 2. **没有提供有效的 Token**: - 当 ACL 被启用后,所有操作都需要提供一个具有足够权限的 Token。 3. **未设置默认匿名策略(anonymous token)**: - 如果未为匿名 Token 设置访问策略,默认情况下所有请求都会被拒绝。 --- ### ✅ 解决方法: #### 1. **确认是否启用了 ACL** 检查你的 Consul 配置文件(如 `server.json`)是否有类似如下内容: ```json { "acl": { "enabled": true, "default_policy": "deny", "enable_token_persistence": true } } ``` 如果启用了 ACL(`"enabled": true`),则需要进行 ACL 初始化。 --- #### 2. **创建初始 ACL Token(Bootstrap)** 如果这是首次启动 Consul ACL 系统,你需要进行一次 **ACL Bootstrap** 来生成一个具有管理权限的 Token: ```bash consul acl bootstrap ``` 该命令会输出一个具有 `management` 权限的 Token,例如: ``` Accessor ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx Secret ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ``` 保存好这个 Secret ID。 --- #### 3. **使用管理 Token 执行命令** 你可以通过以下方式使用该 Token: - **方式一:命令行中指定 Token** ```bash consul members -token=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ``` - **方式二:设置环境变量** ```bash export CONSUL_HTTP_TOKEN=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ``` 之后无需每次加 `-token` 参数。 --- #### 4. **配置匿名 Token 权限(可选)** 如果你希望 `consul members` 等命令在未提供 Token 时也能运行,可以为 **anonymous token** 添加策略: 1. 登录 Consul UI 或使用命令行创建策略(例如允许节点读权限)。 2. 将该策略绑定到匿名 Token。 --- ### 📌 总结 | 步骤 | 操作 | |------|------| | ✅ 1 | 确认是否启用了 ACL | | ✅ 2 | 使用 `consul acl bootstrap` 创建管理 Token | | ✅ 3 | 设置环境变量或命令中使用该 Token | | ✅ 4 | 可选:为 anonymous token 添加策略 | ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值