哪个核心在并发计算期间运行会话

时间:2016-07-04 22:08:43

标签: ipython-parallel

我打开了一个ipython会话,启动了带有4个引擎的ipcluster,让引擎[0]继续以非阻塞模式工作。

现在我在ipython会话中要做一些计算。我如何知道并确保此会话中的计算不使用与engine [0]相同的core / cpu / resources?

1 个答案:

答案 0 :(得分:0)

简短回答:如果你没有明确地将工作发送到引擎0,它就不会使用引擎0的资源。

IPython不管理核心或其他物理资源,它只分配processes。您的操作系统需要将并发进程分配给CPU核心。 如果您已经启动了具有四个引擎的IPython集群并且正在从交互式IPython会话中使用它,那么您有五个可以同时运行代码的Python进程 - 您的四个引擎,以及交互式会话本身。如果引擎0在后台运行作业并且您在交互式会话中执行本地计算,则操作系统应将交互式会话中完成的工作分配给与引擎0占用的核心不同的核心,假设有可用的核心