首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何正确地实例由本地和远程计算机组成的IPython集群

如何正确地实例由本地和远程计算机组成的IPython集群
EN

Stack Overflow用户
提问于 2014-06-17 12:57:02
回答 1查看 807关注 0票数 3

在为IPython安装集群时,我面临着很大的问题。我觉得医生很复杂。

我的系统由以下几点组成:

  1. 本地计算机,Ubuntu12.04 x86_64,IPython 2.1,8核处理器
  2. 远程计算机,Ubuntu12.04 x86_64,IPython 2.1,16核处理器,从本地计算机通过无密码SSH访问。

我没有密码通过ssh linello@myserveripaddress访问远程服务器。我认为这种情况对于许多进行科学计算的人来说是相当标准的。

我想实例化一个带有8个本地引擎和16个远程引擎(总引擎=24个)的IPython笔记本,利用它来进行一些令人尴尬的并行计算。

如果我用ipcluster start启动ipython集群,然后启动一个IPython实例(其中实例化Client类),我只得到8个本地客户端

代码语言:javascript
运行
复制
In[1]: from IPython import parallel
In[2]: clients  = parallel.Client()
In[3]: print clients.ids
Out[3]: [0,1,2,3,4,5,6,7]

这意味着只有本地引擎启动。因此,我修改了我的ipcluster_config.py脚本如下:

代码语言:javascript
运行
复制
c = get_config()

c.IPClusterEngines.engine_launcher_class = 'SSH'
c.LocalControllerLauncher.controller_args = ["--ip='myserverip'"]

c.SSHEngineSetLauncher.engines = {
    'localhost': 4,
    'tyler': 4,
    'par': 4,
}


c.SSHEngineSetLauncher.engine_cmd = ['/ipengine']

myserverip实际上是我的服务器ip 192.168.xxx.yyy

我真的不知道如何正确配置我的ipython配置文件,使其在我的ipython内核中有24个引擎。

EN

回答 1

Stack Overflow用户

发布于 2014-06-23 15:36:39

一开始我也觉得很困惑。我在某种程度上仍然这么做,但我想我有个案子看起来和你的相似。

唯一看上去缺少的东西就是告诉发动机控制器在哪里。Ip群集配置中有一个选项,如下所示:

代码语言:javascript
运行
复制
c.SSHEngineLauncher.engine_args = ['--location=xxx.xxx.xxx.xxx']

其中xxx.xxx是运行控制器的机器的ip地址。我认为这可能是你的配置的问题。

我通常通过从提示符中运行ip集群来测试这类事情。关于这个问题,通常是相当明确的。我希望这能帮上忙。

而且,我通常不需要指定:

代码语言:javascript
运行
复制
c.SSHEngineSetLauncher.engine_cmd = ['/ipengine']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24264454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档