我用Cuda, cuDNN, tensorflow-gpu和所有必要的模块设置了一个Windows 10环境。 我的本地管理员帐户一切正常,我运行的所有检查命令显示2个gpu。 但是,如果我用另一个本地管理员帐户登录,检查命令只返回CPU。 我使用的验证命令示例:
import tensorflow as tf
tf.test.is_gpu_available()
你知道如何解决我的问题吗? 问题来源StackOverflow 地址:/questions/59466895/tensorflow-gpu-is-not-available-with-different-user-account-windows-10
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
这个问题可能是由于不同用户账户的环境变量或权限设置不一致导致的。请尝试以下步骤来解决:
检查环境变量:确保所有用户账户的系统环境变量中都包含了CUDA和cuDNN的路径。特别是PATH
变量应包含CUDA的bin
目录,以及cuDNN对应的库目录。
权限问题:确认非工作账户是否有足够的权限访问NVIDIA驱动和CUDA库文件。有时候,尽管是管理员账户,但某些安全策略或组策略设置可能会限制对这些资源的访问。
显卡驱动权限:确保所有用户都能访问NVIDIA显卡驱动。有时需要在NVIDIA控制面板中调整设置,或者检查设备管理器中显卡的权限设置。
TensorFlow配置:检查是否每个用户账户下都有独立的TensorFlow配置。如果之前是在一个账户下通过pip安装的tensorflow-gpu,可能需要在其他账户下也执行同样的安装过程,以确保所有依赖项正确配置。
重新登录或重启:有时候,即使更改了设置,也需要用户完全注销然后重新登录,或者甚至重启计算机,以便系统能够应用所有的更改。
使用conda环境:如果可能,建议使用Anaconda或Miniconda创建一个虚拟环境,并在该环境中安装所有必要的库。这样可以更好地隔离不同用户的环境配置,减少因系统全局设置差异引起的问题。
查看系统事件日志:如果上述方法都不能解决问题,查看Windows事件查看器中的系统和应用程序日志,可能会有与GPU访问失败相关的错误信息,这将提供进一步的线索。
记得在进行任何更改后重新运行你的验证命令,以检查GPU是否已经可用。希望这些建议能帮助你解决问题。