【问题标题】:browser mode with foreach %dopar%带有 foreach %dopar% 的浏览器模式
【发布时间】:2012-03-18 00:04:40
【问题描述】:

有没有办法在并行 foreach 调用中进入浏览器模式?我尝试使用manual = TRUE 创建一个集群。正如预期的那样,它需要我手动启动 R 的实例。但是,一旦实例从主进程接收到任务,它就会退出比赛并且似乎不会在 browser() 命令处暂停。我想进入浏览器查看R的状态。

foreach( i = 1 : 5 ) %dopar% 
{
     browser()
}

这是手动模式下的 Rscript 调用:

c:/.../bin/x64/Rscript" -e "parallel:::.slaveRSOCK()" MASTER=localhost PORT=10187 OUT= TIMEOUT=2592000 METHODS=TRUE

【问题讨论】:

    标签: r


    【解决方案1】:

    虽然?browser 中没有说明,但我希望browser 仅适用于交互式会话。

    【讨论】:

    • 或许可以修改manual=TRUE时显示的rscript调用,让R交互运行?
    • 我在原始帖子中添加了 rscript 调用
    • @SFun28:你不能让 R 通过 Rscript 交互地运行。来自?Rscript:“始终提供选项'--slave --no-restore':这些暗示'--no-save'”。
    • 啊...谢谢!听起来我需要找到一种交互方式来运行它
    • Joshua - 感谢您为我指明了正确的方向。发布解决方案。
    【解决方案2】:

    解决方案是使用manual = TRUE,加载新的 R 实例(集群中的每个节点一个),然后执行以下操作:

    timeout = 2592000
    parallel:::.slaveRSOCK()
    

    所以基本上忽略 RScript 指令。

    【讨论】:

      猜你喜欢
      • 2011-04-23
      • 1970-01-01
      • 2023-03-18
      • 2010-09-19
      • 2018-07-13
      • 2017-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多