PyCharm 远程 TensorFlow

我发现我跟 TensorFlow 有仇。

自己电脑上没有GPU,所以只能远程带有GPU的服务器学习写TensorFlow。Vim虽然高效,但真的真的还是IDE用得习惯一些。所以,就想用Pycharm的远程功能直接在服务器上建立项目、调试运行。

服务器配置

在服务器上配置好VirtualEnv,测试import tensorflow as tf,正常。

添加远程Interpreter

在设置里找到「Project Interpreter」,点击右边的齿轮,选择「Add Remote」。

我这里选择的是「SSH Credentials」,下面输入信息即可。「Python Interpreter Path」里面可以填写VirtualEnv的python(例如/home/haoyu/venv/bin/python3),这样可以用VirtualEnv。当然,也可以填写全局的Python。

新建项目

「Project Interpreter」选择你刚才创建的远程Interpreter,这时候界面变了:上面的Path是你的代码在本地想放在哪里,下面的是代码在服务器上放在哪里(默认是/tmp/SOME_FOLDER)。

这里的逻辑是这样的:本地代码修改之后,PyCharm会自动将改动同步到远程,然后再使用远程的Python运行你的代码。

下面就是愉快地写代码了

恩,就这样。

一个坑,请注意

运行的时候会有一个坑。

上面说了,import tensorflow正常我才从服务器上退出来的。可以一到PyCharm里面,import tensorflow就各种出错,使用全局Python也不行。

过程不说了,直接说原因和怎么办:

报的错都是“XXX.so 找不到”,但我明明都已经安装过了。原因是缺少环境变量。只需要将 Cuda的路径/usr/local/cuda-8.0/lib64加入环境变量即可。

怎么做?

  1. 对整个Console加入环境变量: 在「Settings」-「Build, Execution, Development」-「Console」-「Python Console」里面,找到「Environment variables」,将LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64添加进去即可。

  2. 对某个运行文件加入环境变得:右上角的「Run/Debug Configurations」里面,找到想运行的文件,在「Configurations」选项卡中找到「Environment variables」,将LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64添加进去即可。

所以,如果还缺其他环境变量的话,同样的办法添加即可。

结束

好了,最后一次尝试入坑TensorFlow吧!要加油哦!

发表评论

电子邮件地址不会被公开。 必填项已用*标注