python与TensorflowLinux

Linux——如何在ubuntu上后台运行python程序?

2018-11-20  本文已影响67人  SpareNoEfforts

1. 在终端运行python的时候可以用:

CUDA_VISIBLE_DEVICES=1 python your_file.py
CUDA_VISIBLE_DEVICES=0,1 python your_file.py
CUDA_VISIBLE_DEVICES="0,1" python your_file.py

2. 在后台运行命令,使得有缓冲输出

nohup  python  [PythonSourceFile]  ( >  [log file] )    2>&1   &

如果没有指定输出文件,nohup会将输出放到nohup.out文件中,但在程序运行过程中nohup.out文件中不能实时的看到python的输出,原因是python的输出有缓冲。
举例说明nohup python -u your_file.py > my_out.log 2>&1 &

3. 在后台运行命令,使得无缓冲输出

nohup   python   -u  startup.py    >   abc.log   2>&1  &

#使用GPU的时候并且无缓冲输出:
使用GPU的时候并且无缓冲输出:
CUDA_VISIBLE_DEVICES=1 nohup python -u yourfile.py >my_out 2>&1 &

#注意CUDA_VISIBLE_DEVICES在nohup前面

export PYTHONUNBUFFERED=1
nohup python (> [log file]) 2>&1 &

4. 如何kill nohup的进程

#筛选需要kill的进程pid
ps -aux|grep "process name"
kill -9 pid
上一篇下一篇

猜你喜欢

热点阅读