深度学习中使用Screen 指令进行离线训练

家电维修 2023-07-16 19:17www.caominkang.com家电维修技术

问题说明

在深度学习的训练过程中,常需要远程连接服务器进行长达数小时甚至数日的训练,此时若出现网络波动或其他意外情况导致连接断开,往往会让本就不富裕的学习生活雪上加霜。。。。
故!需要一种方式提供离线训练,让我们在服务器与本机完全断开时也能保持训练,并可随时恢复该线程以查看训练进度。

在Linux系统下使用screen指令进行离线训练 主要指令

screen -S screen_name创建名为screen_name的窗口(线程),并自动进入该窗口。
screen -r screen_name在主窗口中使用此命令恢复到子窗口screen_name中。
screen -ls查看当前存在的窗口列表。
screen -S screen_name -X quit关闭子窗口screen_name ,

指令使用演示

1.使用指令screen -S test,创建名为test的窗口。指令执行后,会跳转进入该窗口。

2.在该窗口中执行一个计时器程序python a_test.py,代表程序正在运行。

a_test.py代码如下

执行后输出如下,每隔1秒输出一次,代表程序运行

3.直接关闭该服务器连接窗口(或以其他方式断开与此窗口的连接,关闭窗口只是为了证明离线的有效性),隔一段时间后重新登录服务器,并使用screen -r test恢复窗口

可以看到,恢复窗口后,计时器显示出的时间表示该程序执行并未中断

4.使用Ctrl+A+D(按住Ctrl先按A再按D)退出当前窗口到主窗口中,使用screen -ls可以查看当前存在的窗口。

可以看到,在一个主窗口下可以存在很多子窗口,并且子窗口可以同名(如test),但有唯一的窗口编号。
5.使用screen -S screen_name -X quit来关闭子窗口,其中screen_name 可以为ID,也可以为窗口名,但若存在同名窗口,则只能使用ID来指定窗口。
使用screen -S 35507-X quit,来关闭35507.test,再使用screen -ls查看当前子窗口列表,确认是否关闭。

Copyright © 2016-2025 www.jianfeikang.com 建飞家电维修 版权所有 Power by