如何简单地杀死python-tensorflow进程并释放内存?

时间:2017-04-10 13:39:08

标签: python tensorflow

每当我运行一个使用tensorflow的python脚本并且出于某种原因决定在它完成之前杀死它时,存在ctrl-c无法工作的问题。我会使用ctrl-z,但它不会释放gpu内存,所以当我尝试重新运行脚本时,没有内存。在linux中有这个解决方案吗?

4 个答案:

答案 0 :(得分:2)

我总是从脚本启动tensorflow程序。例如:

python tf_run.py 1> ./log 2> ./err &

然后使用top / htop监控您的程序状态。如果您的计算机上有许多其他进展,那么只有python进展。

top -p $(pgrep -d',' python)

最后,当你想杀死进展时,

ps aux | grep tf_run.py | awk '{print $2}' | xargs kill -9

当您有多个张量流程进展时,此命令行非常有用。

答案 1 :(得分:1)

不要在桌面上运行它,但是对于没有显示器的HPC /远程计算机,这会杀死所有使用GPU的进程:

nvidia-smi -q -d PIDS | grep -P "Process ID +: [0-9]+" | grep -Po "[0-9]+" | xargs kill -9

答案 2 :(得分:0)

运行top命令查找进程ID。然后kill它。

为:

top
找到pid

kill pid

答案 3 :(得分:0)

在bash中使用top命令查找python脚本进程的进程ID(PID)。

top

例如,PID为5000

退出顶部。然后杀死进程:

kill 5000