我该如何在Dask中使用InfiniBand网络?

10

我有一个高性能网络的集群 (InfiniBand)。 然而,当我设置我的Dask调度程序和工作节点时,性能似乎并不如我所期望的快。 我怎么告诉Dask使用这个网络呢?

免责声明:我只是问这个问题,以便回答它。这已经成为一个常见的问题。

1个回答

13

从dask.distributed 1.16.3版本开始,您可以使用--interface关键字指定dask-schedulerdask-worker可执行文件的网络接口,例如:

dask-scheduler --interface ib0 --scheduler-file ~/my.cluster.yaml
dask-worker --interface ib0 --scheudler-file ~/my.cluster.yaml
在上面的代码示例中,我假设您的InfiniBand网络接口称为ib0。 您可以通过向IT部门询问或检查ifconfig的输出来检查这一点。
$ ifconfig
lo          Link encap:Local Loopback                       # Localhost
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
eth0        Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX   # Ethernet
            inet addr:192.168.0.101
            ...
ib0         Link encap:Infiniband                           # Fast InfiniBand
            inet addr:172.42.0.101

我使用--interface ib0,但似乎Dask仍然转到eth0。我该如何调试它?(分布式版本1.21.1。也与我的系统管理员一起工作)。谢谢! - Wei Liu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接