【问题标题】:can ipython parallel operate across different sets of nodesipython 可以跨不同的节点集并行操作吗
【发布时间】:2014-01-29 14:23:12
【问题描述】:

在 N=P+Q 计算节点的情况下,ipython 是否可以同时向不同的 R 节点和 Q 节点发送消息,并且每组节点并行进行一些计算,并且两组节点都返回结果到控制器?

【问题讨论】:

    标签: parallel-processing ipython


    【解决方案1】:

    是的,假设是直视

    from IPython.parallel import Client
    c = Client()
    c.ids
    c[:].apply_sync(lambda : "Hello, World")
    

    结果

    ['Hello, World',
     'Hello, World',
     'Hello, World',
     'Hello, World',
     'Hello, World',
     'Hello, World',
     'Hello, World',
     'Hello, World']
    

    在偶数/奇数引擎上进行分区

    (
    c[0::2].apply_sync(lambda : "Hello"),
    c[1::2].apply_sync(lambda : "World")
    )
    

    结果

    (['Hello', 'Hello', 'Hello', 'Hello'], ['World', 'World', 'World', 'World'])
    

    这里我应用的是同步,所以不完全是同时,但是如果你应用异步,你可以在之后立即收集。

    您还可以在每组节点上推送一个变量,该变量将“决定”执行哪种计算。

    【讨论】:

    • 太棒了!谢谢你。刚刚问了另一个相关问题。
    猜你喜欢
    • 2014-01-05
    • 1970-01-01
    • 2019-05-07
    • 2022-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-24
    • 2013-08-11
    相关资源
    最近更新 更多