Dask事件循环没有响应 - 工作未并行化

时间:2018-01-04 00:04:42

标签: dask dask-distributed

这是此question的后续行动。我现在正试图在AWS上的多个EC2节点上运行Dask。

我可以在第一台机器上启动调度程序:

enter image description here

然后我在其他几台机器上启动工作人员。从其他机器我能够使用nc -zv ${HOST} ${PORT}访问调度程序,而工作人员似乎能够连接到主服务器,如工作人员的sysout所示:{{1} ,但几乎立即工人抱怨超时循环。

enter image description here

从主节点,在我的Jupyter笔记本中,然后我连接到调度程序:

Registered to: tcp://10.201.101.108:31001

但是工作不会传播到工作节点(工作节点CPU保持在<1%),甚至传播到与调度程序在同一台机器上运行的工作程序。这是一个高度并行化的任务,当在一台机器上运行时(即,使用dask_client = Client('10.201.101.108:31001')消耗机器上的每个核心)。

1 个答案:

答案 0 :(得分:0)

通常情况下,&#34;事件循环没有响应&#34;首次连接时,请根据您的网络进行操作。

要检查的一些事项

  1. client.get_versions(check=True)
  2. client.scheduler_info()['workers']有什么作用吗?如果没有,那么您可能在连接时遇到一些问题
  3. 考虑使用client.get_worker_logs()
  4. 查看工作日志
  5. 尝试运行client.submit(lambda x: x + 1, 10).result()
  6. 之类的简单计算