如何查看 Dask 计算任务的进度?
How to see progress of Dask compute task?
我想在 Jupyter notebook 上看到一个进度条,而我正在 运行 使用 Dask 的计算任务,我正在计算大型 csv 文件中 id
列的所有值 + 4GB,有什么想法吗?
import dask.dataframe as dd
df = dd.read_csv('data/train.csv')
df.id.count().compute()
如果您使用的是单机调度程序,请执行以下操作:
from dask.diagnostics import ProgressBar
ProgressBar().register()
http://dask.pydata.org/en/latest/diagnostics-local.html
如果您使用的是分布式调度程序,请执行以下操作:
from dask.distributed import progress
result = df.id.count.persist()
progress(result)
或者只使用控制面板
http://dask.pydata.org/en/latest/diagnostics-distributed.html
This resource 提供了两种情况(本地和分布式)的完整代码示例以及有关使用 Dask 仪表板的更多详细信息。
请注意,在 Jupyter 笔记本中工作时,您可能必须将 ProgressBar().register()
调用和您要跟踪的计算调用(例如 df.set_index('id').persist()
)分开到两个单独的单元格中,以便进度条实际显示出现。
执行:
不要做:
我想在 Jupyter notebook 上看到一个进度条,而我正在 运行 使用 Dask 的计算任务,我正在计算大型 csv 文件中 id
列的所有值 + 4GB,有什么想法吗?
import dask.dataframe as dd
df = dd.read_csv('data/train.csv')
df.id.count().compute()
如果您使用的是单机调度程序,请执行以下操作:
from dask.diagnostics import ProgressBar
ProgressBar().register()
http://dask.pydata.org/en/latest/diagnostics-local.html
如果您使用的是分布式调度程序,请执行以下操作:
from dask.distributed import progress
result = df.id.count.persist()
progress(result)
或者只使用控制面板
http://dask.pydata.org/en/latest/diagnostics-distributed.html
This resource 提供了两种情况(本地和分布式)的完整代码示例以及有关使用 Dask 仪表板的更多详细信息。
请注意,在 Jupyter 笔记本中工作时,您可能必须将 ProgressBar().register()
调用和您要跟踪的计算调用(例如 df.set_index('id').persist()
)分开到两个单独的单元格中,以便进度条实际显示出现。
执行:
不要做: