【nohup后台挂起的一种替代方式】TMUX命令使用技巧

因为在使用常用的nohup命令搭配torchrun的时候会出现一些因nohup而产生的bug,如下所示:

torch.distributed.elastic.multiprocessing.api.SignalException: Process 7206 got signal: 1


因此,我们可以尝试使用tmux来代替nohup命令。需要使用到的主要命令如下所示:

sudo apt-get install tmux   # 安装
tmux                        # 进入tmux窗口
exit                        # 退出tmux窗口,或者使用快捷键[ Ctrl+d ]
tmux new -s {session-name} # 创建一个会话,并直接设置会话名
# 快捷键[ Ctrl+b ] 是tmux的前缀键,用完前缀键后可以继续按指定键来完成指定命令
[ Ctrl+b ] [ d ]                         # 将会话与窗口分离,或者[ Ctrl+b ] tmux detach,这个命令相当于将tmux与当前的会话窗口分离
tmux ls                                  # 查看所有会话,或者使用tmux list-session
tmux attach -t {session-name}           #  根据会话名将terminal窗口接入会话
tmux kill-session -t {session-name}     #  根据会话名杀死一个会话
tmux switch -t {session-name}           # 根据会话名切换会话
tmux rename-session -t {old-session-name} {new-session-name} # 重命名会话
tmux -u new -s {session-name} # 创建一个会话,并直接设置会话名,且在tmux中可以显示中文

#翻页
ctrl+b 松开 按 "[" #开启上下翻页模式
上下箭头键实现上下翻页
q #退出

训练PyTorch模型的时候一个基本步骤:

[terminal]: tmux new -s model-ft       # 创建一个会话,并设置会话名:model-ft
[tmux]: conda activate your_env           # 在tmux会话中,我们激活我们要使用的conda环境
[tmux]: python train.py                   # 在tmux会话中,开始训练我们的模型
[tmux]: [ Ctrl+b ] [ d ]                  # 将会话与窗口分离
[terminal]: tmux ls                       # 查看我们刚刚创建的会话
[terminal]: watch -n 0.1 nvidia-smi # 监控我们的GPU使用信息

tmux使用过程中可能出现的问题:

1. 在tmux会话窗口中只显示$,不显示路径和conda环境等信息
解决方法:
a vi ~/.tmux.conf
b 添加以下内容
set-option -g default-shell /bin/bash
set-option -g default-command "bash -l"

c tmux kill-session -t 你的会话
d tmux new -s 你的会话

参考:

nohup训练pytorch模型时的报错以及tmux的简单使用_torch.distributed.elastic.multiprocessing.api.sign-CSDN博客Tmux 使用教程 - 阮一峰的网络日志

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XuecWu3

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值