我最近进入了机器学习。我正在运行一个对我的处理器很重的pythonscript。我的第一个想法是设置一个在后台运行的cron-job然后在python取消工作,如果时间是早上06:00到07:00之间。 (理想情况下,这项工作只能在某些阶段取消。)
0 1 * * * cd ~/web/im2txt/im2txt && ./train.sh >/Users/kristoffer/Desktop/train.py 2>/Users/kristoffer/Desktop/train.log
但是后来我想,有没有想过,无论是在python还是通过shell来运行脚本如果没有使用计算机?是闲着还是那样?
答案 0 :(得分:2)
与其他进程相比,使程序以较低优先级运行的标准方法是使用nice
命令:
nice -n 20 ./train.sh
该命令将一直运行,但调度程序将为其提供尽可能低的优先级,只有在没有其他任何操作时才有效地为其提供CPU时间。
但请注意,nice
只会使其他公主的过程变得更好(因此也就是名称)。如果没有其他进程在争夺CPU时间,那么CPU耗尽的进程将利用100%的可用内核(并加热机器),即使在最低优先级时也是如此。
答案 1 :(得分:2)
xscreensaver
可以运行其配置文件中指定的任何程序,即:
programs: \
qix -root \n\
ico -r -faces -sleep 1 -obj ico \n\
xdaliclock -builtin2 -root \n\
xv -root -rmode 5 image.gif -quit \n
然后,你可以添加自己的,让xscreensaver完成剩下的工作,确定你的计算机何时空闲。