如何配置MAC+PC的深度学习环境
有一台PC(GPU 1080Ti的),有一台mac,平常开发主要用的都是mac,深度学习又需要有GPU支持,所以怎么把这台PC完美的利用起来,花了一点点时间摸索,分享给大家。本教程仅限本地局域网,也就是你的MAC和你的PC在同一个WIFI下,如果不在同一WIFI下,就需要在研究下别的工具了。
-
PC配置。
1.1 安装linux系统。
我装的Ubuntu 16.04。
1.2
安装必备的深度学习库。装了python,conda,jupter,cuda,cuDNN,tensorflow (GPU版本),keras,cuda和cuDNN教程很多,找一篇适合自己的,通读,一定理解了每一步都在干嘛,然后一把搞定。其他的库可以用pip或者conda装都可以。
1.3 安装ssh -server
sudo apt-get install openssh-server
1.4 拿到 Ubuntu的局域网ip地址。找到192.168开头的那个即可。
ifconfig
1.5 MAC ssh 就可以控制PC。
ssh username@ip
-
MAC配置
2.1 MAC配置。
按照你需要安装必需的深度学习的库,还是建议用conda的环境来管理各种包,免的依赖冲突。这个不赘述了。
-
远程jupyter notebook配置。
3.1 linux系统上打开jupyter。
cd到你的工作目录,然后输入:
jupyter notebook --no-browser --port=8080
这样我们打开了一个jupyter notebook,但是不在浏览器中打开,端口号是8080,这个端口号要在之后用到。
3.2 在mac终端中新开一个ssh链接到linux机器。
ssh -N -L 8080:localhost:8080 username@ip
这里的端口就是之前的8080端口。-N命令是告诉ssh 这个ssh链接不会执行远程操作,算是一种安全保护措施吧。-L 命令是从本地(localhost)的8080 端口到linux主机的8080端口建立了一个隧道。这样我们就可以从本地访问远程主机上开启的jupyter notebook了。
3.3 在本机浏览器中打开
http://localhost:8080/
Done!
3.4 tensorboard 监控。
如果在远程主机上训练通过tensorboard来监控,可以采用类似的思路实现。
3.4.1 远程主机上cd到项目的路径,开启tensorboard
tensorboard --logdir /path/to/log --port=8070
3.4.2 本地主机上开启新的ssh连接
ssh -N -L 8070:localhost:8070 username@ip
3.4.3 在本机浏览器打开
http://localhost:8080/
Done ! Enjoy!