Dask很慢,许多磁盘读取和磁盘写入块出现在状态页面中

时间:2018-02-22 13:41:34

标签: dask

我的Dask计算很慢。当我查看诊断仪表板的状态页面时,我发现大部分时间都花在disk-read-*disk-write-*任务上。

这是什么意思?

如何诊断此问题?

1 个答案:

答案 0 :(得分:3)

当Dask工作人员开始耗尽内存时,他们会将额外的数据写入磁盘。这将作为disk-write-任务记录在状态页面中。当再次需要该数据时,将从磁盘读取该数据,并在状态页面上显示disk-read-任务。您可以通过查看显示每个工作程序的内存使用情况的左上图或通过查看显示每个特定类型仍在内存中的任务数的进度条的实体部分来确认这一点。

您可以解决这个问题:

  1. 弄清楚为什么Dask需要将数据保存在内存中。常见原因:
    1. 当你persist大量数据时
    2. 当Dask必须保留大量中间结果时,例如在完全洗牌的情况下,或者具有高结果基数的计算
  2. 获得更多记忆
  3. 获得更快的磁盘。现代磁盘带宽在过去几年中有所改善。可以在具有1-2GB / s带宽的消费级个人笔记本电脑上获得驱动器。