痛点1:显卡只有8G,经常gradient overflow或者CUDA OOM:)
痛点2:主机连接数4k显示器,经常系统卡住,只有鼠标能动,某度知道热心网友说等几分钟试试…
刚好有一个模型是在命令行运行,那就是试试关闭Xorg图形界面,使用纯命令行提升一下逼格!
(by the way,人家用的是v100 至少16G)
环境:台式机,单系统Ubuntu18.04LTS
必学1:tty基础
TTY简介
TTY 这个词来自 TeleTYpewriter(电传打字机)。在 Unix 的早期,连接到计算机的用户终端就是机电的电传机或电传打字机(简称 tty)。从那时起,TTY 这个名称继续用于纯文本控制台。如今,所有文本控制台都代表虚拟控制台,而不是物理控制台。
在Ubuntu 18.04中切换TTY的方法
默认情况下,Linux 系统中有 7 个 tty。它们被称为 tty1、tty2……tty7。2到 6 的 tty 只是命令行,第 1 个 tty 是 GUI(图形桌面会话)。使用 CTRL+ALT+Fn
键在不同的 TTY 之间切换,例如,要切换到 tty1,按下 CTRL+ALT+F1即可。
必学2:如何关闭Xorg
-
Ctrl+Alt+F2-F6
进入tty2-6任意一个终端中 -
w -s
查看所有激活的tty的情况 -
sudo pkill Xorg
(简单粗暴) -
ps -t tty1
查看tty1中Xorg的PID号,再sudo kill pid
(细致温柔)
不管是粗暴(1-2-3)还是温柔(1-2-4)的kill Xorg,之后都会转入Ubuntu登录界面,按组合键进入tty2-6之一使用w -s
或者 nvidia -smi
,可以发现显存占用果然减少了!
tty1有时候显示为“:0”,其实它就是tty1。
kill Xorg的pid即可,其他的例如sound、mouse、keyboard别动!
kill tty1的Xorg之后,再ps -t tty1查看发现还是存在Xorg进程,但是“TIME 00:00:00”,表示tty1没有运行Xorg.输入w -s可以发现没有tty1了!
kill命令的执行者必须是超级用户或对tty1的进程有操作权限,否则,命令会报错:Operation not permitted
必学3:关闭多余的tty终端
-
Ctrl+Alt+F2-F6
进入tty2-6任意一个终端中 -
w -s
查看所有激活的tty的情况
username@computername:~$ w -s
USER TTY FROM IDLE WHAT
root tty1 0 56:40
root tty2 0 36:24 run.sh wiki
root tty3 0 0.00s w -s
-
ps -t tty4
查看目标tty中CMD的PID号,再sudo kill pid
username@computername:~$ ps -t tty4
PID TTY TIME CMD
4791 tty4 00:00:00 login
9619 tty4 00:00:00 bash
感谢:
在Ubuntu 18.04系统中不使用功能键切换TTY的方法
update 2021.08.08
在跑深度学习的时候,由于在终端运行,中止运行之后导致显存一直被占用,以致于下一次跑网络的时候会出现现存不足的情况。在这种情况下可以使用如下指令kill相应进程:
sudo kill -9 PID
查看哪些进程在占用显存:
nvidia-smi