【问题标题】:R: parallel makePSOCKcluster hangsR:并行 makePSOCKcluster 挂起
【发布时间】:2015-09-05 16:35:51
【问题描述】:

我正在尝试通过 makePSOCKcluster 连接到另一台计算机:

library(parallel)    
cl <- makePSOCKcluster('10.0.0.107')

不幸的是它挂了。我已经在 ssh-keygen 的帮助下完成了无密码登录,并且控制台中的 ssh 命令在两台计算机上都可以工作。

我也试过了:

cl <- makePSOCKcluster('10.0.0.107', outfile = '')

并得到以下错误:

starting worker pid=2937 on blabla:11225 at 17:41:20.364
Error in socketConnection(master, port = port, blocking = TRUE, open = "a+b",  : 
  cannot open the connection
Calls: <Anonymous> ... doTryCatch -> recvData -> makeSOCKmaster -> socketConnection
In addition: Warning message:
In socketConnection(master, port = port, blocking = TRUE, open = "a+b",  :
  blabla:11225 cannot be opened
Execution halted

然后史蒂夫韦斯顿的answer建议我尝试了手动模式。我一步一步调试slaveRSOCK函数。我被卡住了:

Error in socketConnection(master, port = port, blocking = TRUE, open = "a+b",  :
  cannot open the connection
In addition: Warning message:
In socketConnection(master, port = port, blocking = TRUE, open = "a+b",  :
  blabla:11225 cannot be opened

我也尝试使用打开任何端口

sudo iptables -A INPUT -p tcp --dport 11000 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --dport 11000 -j ACCEPT

它在两台计算机上都有变化。

在两台笔记本电脑上,我都有相同版本的 R (R.3.2.2) 和 parallel 包。一台计算机装有 Ubuntu 14.04,另一台计算机装有 Kubuntu 14.04。

请帮忙。

【问题讨论】:

  • 你检查你的路由器配置了吗?
  • 不,你能告诉我应该怎么做吗?
  • 您应该查看您的设备用户手册了解更多信息。

标签: r parallel-processing cluster-computing


【解决方案1】:
  1. 机器1上打开一个端口进行监听 sudo nc -l &lt;portnumber&gt; 并让终端保持打开状态

  2. 从另一个终端检查netstat -an |grep &lt;portnumber&gt; |grep LISTEN 是否将端口显示为LISTENING

  3. ma​​chine 2 运行 nc machine1 &lt;portnumber&gt; 并查看您是否能够连接并输入内容

如果以上操作正常,那么你的路由器设置是正确的。

90% 的可能性是由路由器和防火墙设置引起的。

【讨论】:

    猜你喜欢
    • 2013-06-23
    • 2019-02-15
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    相关资源
    最近更新 更多