【发布时间】:2016-11-27 02:25:32
【问题描述】:
在分布式作业上运行 Dask 时,调度程序出现以下错误:
distributed.core - ERROR -
Traceback (most recent call last):
File "/usr/local/lib/python3.4/dist-packages/distributed/core.py", line 269, in write
frames = protocol.dumps(msg)
File "/usr/local/lib/python3.4/dist-packages/distributed/protocol.py", line 81, in dumps
frames = dumps_msgpack(small)
File "/usr/local/lib/python3.4/dist-packages/distributed/protocol.py", line 153, in dumps_msgpack
payload = msgpack.dumps(msg, use_bin_type=True)
File "/usr/local/lib/python3.4/dist-packages/msgpack/__init__.py", line 47, in packb
return Packer(**kwargs).pack(o)
File "msgpack/_packer.pyx", line 231, in msgpack._packer.Packer.pack (msgpack/_packer.cpp:231)
File "msgpack/_packer.pyx", line 239, in msgpack._packer.Packer.pack (msgpack/_packer.cpp:239)
MemoryError
这是调度程序或其中一个工作人员的内存不足吗?还是两者兼而有之??
【问题讨论】:
-
鉴于错误来自调度程序,我的猜测是调度程序内存不足。这在正常操作下非常罕见。在您的问题中知道发生这种情况时您在做什么会很有趣。
-
一种常见的情况是,您通过调用
e.gather(...)或collection.compute()将大量数据从工作人员收集回客户端