python-3.x – 如何限制Python使用的处理器数量

我有一个相当内存昂贵的
Python程序,可以在有8个CPU的计算机上运行(使用Python 3.1 64位).问题是它使用所有8个处理器来达到100%的使用率,从而冻结机器并使事情变得缓慢.我如何让Python只使用7个处理器来释放更多的CPU?我已多次在多处理库中试验过Pool类,但没有运气.

例如,如果我想调用我的程序的主要功能并且只使用7个处理器,那么我似乎只需要做以下操作,但没有运气:

来自多处理导入池
游泳池(7,主(())

谁能告诉我哪里出错了?谢谢!

最佳答案 我有同样的问题,我通过分配一个较少的池来修复:

pool= multiprocessing.Pool(processes=(multiprocessing.cpu_count() - 1))

通过执行此操作并让您的池仅使用CPU-1,您可以为PC节省一些额外的电量.
这对我的Windows机器有很大的帮助,所以我仍然可以点击其他应用程序(W7 64位).在Linux上,无论哪种方式都可以.

点赞