Luozm +

Server and multi-gpu training

使用Pycharm在服务器上进行多GPU训练

原创文章,转载请注明:转自Luozm's Blog

1. Server

最近在做一个图片的项目,由于数据量太大,所以需要租用服务器进行训练。这里我选择的是AWS的EC2 instance(p2)。

在AWS上使用服务器很简单,不过在使用P2 instance之前需要手动向客服提升limit,基本上一天之内就会有答复。

1.1 Tools

在这里介绍两个Windows下使用的工具

1.1.1 Putty

在Windows下使用SSH的工具:PuTTY

1.1.2 WinSCP

WinSCP 是适用于 Windows 的基于 GUI 的文件管理器,可以通过它来使用 SFTP、SCP、FTP 和 FTPS 协议将文件上传并传输到远程计算机。

1.2 Connect to server

使用 PuTTY 从 Windows 连接到 Linux 实例

如果连接不上Server请检查安全组的设置,我就遇到了同样的问题。

1.3 Useful tips

在Server上下载数据:

查看Server上的内存、CPU和GPU状态:

1.4 screen

Screen是一个终端会话管理程序,使用Screen可以在Linux后台运行多个程序,这样就可以在网络中断之后让程序保持运行。这里是官方教程。

1.4.1 常用方法

创建会话: screen -S screen_name

列出所有会话: screen -ls

分离会话: screen -d screen_name(或者快捷键:Ctrl+a d)

恢复会话: screen -r screen_name

停止会话: exit(或者快捷键:Ctrl+a k)

远程演示: screen -x screen_name(共享会话)

进入 copy/scrollback 模式: C-a [, C-a C-[, C-a <ESC>

1.4.2 配置文件

Screen 默认配置文件路径为~/.screenrc

A killer GNU Screen Config

2. Pycharm for remote training

[教程 一步步从零开始:使用PyCharm和SSH搭建远程TensorFlow开发环境](http://www.sohu.com/a/129277803_465975)

3. Multi-GPU with Keras

How-To: Multi-GPU training with Keras, Python, and deep learning

这种方法好像不能自己设置使用的GPU,可以自己改一下源码multi_gpu.py

© Luozm . All rights reserved. | Top

Life

Theory

Develop