【问题标题】:ipyparallel with mpi cannot find engines带有 mpi 的 ipyparallel 找不到引擎
【发布时间】:2017-05-03 08:27:04
【问题描述】:

我正在尝试使用 mpi4py 获得一个基本的 ipyparallel 环境,如 in the ipyparallel documentation 所述。启动 ipcluster 后,我加载 ipython 并尝试创建一个客户端,但它没有 ID,访问 directview 会返回 NoEnginesRegistered 异常。

我采取的步骤:

  1. 创建新环境:conda create --name=ipyparallel 和 source activate ipyparallel
  2. 安装 ipyparallel 和 mpi4py:conda install ipyparallel mpi4py
  3. 创建一个新的 ipython 配置文件:ipython profile create --parallel --profile=mpi
  4. 编辑 ~/.ipython/profile_mpi/ipcluster_config.py 并添加c.IPClusterEngines.engine_launcher_class = 'MPIEngineSetLauncher'
  5. 使用ipcluster start --profile=mpi 启动集群

然后我启动 ipython 并运行以下命令:

import ipyparallel as ipp
c = ipp.client(profile="mpi")
c[:] # <-- NoEnginesRegistered exception

第 5 步报告“引擎似乎已成功启动”,我可以看到名为“mpiexec”的进程正在运行。奇怪的是,我在另一台具有相同操作系统的机器上尝试了这些相同的步骤,并且没有问题。我错过了什么?

【问题讨论】:

    标签: python mpi4py ipython-parallel


    【解决方案1】:

    我为遇到类似问题的任何人解决了这个问题。在安装过程中,我已将笔记本扩展添加到 jupyter 的全局配置中。不知道为什么会导致此问题,但现在已修复。在 conda 环境之外,我跑了:

    sudo pip install ipyparallel
    sudo jupyter nbextension disable --py ipyparallel
    sudo jupyter nbextension uninstall --py ipyparallel
    sudo pip uninstall ipyparallel
    

    然后在 conda 环境中我可以连接到 ipyparallel 引擎。

    【讨论】:

      猜你喜欢
      • 2021-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-15
      • 2020-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多