我正在运行一个用python编写的程序,它使用theano进行大量的计算。
因为它是一个非常密集的CPU程序,它正在干扰我的笔记本电脑上的所有其他活动。
由于这个原因,我一直在将进程的良好级别设置为19,并使用cpulimit将其CPU使用率降低到10%。
不幸的是,这些尝试都没有效果,因为笔记本电脑有时甚至会被卡住几分钟。
你知道如何解决这个问题吗?如何指示调度程序正确运行?
这台笔记本电脑是三星的Ultrabook (新系列9),带有英特尔的核心i5-3317U。操作系统是Linux,Ubuntu15.10,内核4.2.0。
编辑:问题似乎是由垃圾(低内存,不断交换)造成的。
发布于 2016-03-18 16:44:21
这种无响应性,尽管CPU是有限的,通常是由交换引起的(例如,您的进程将其他任务推送到磁盘,并使它们返回将花费大量时间)。
限制内存使用的最佳方法通常是程序内部。如果这是不可能的,并且内存被缓慢地消耗(因为它没有被释放),那么可能需要频繁地关闭程序并重新启动。当然,只有在定期编写中间结果的情况下,这才有效。
从程序外部可以使用timeout脚本限制内存量(这不是coreutils的超时!)。它有一个-m选项来限制内存,如果它开始消耗过多的内存,它将杀死您的进程。
如果不能重新启动处理,则您的选项是
https://unix.stackexchange.com/questions/270690
复制相似问题