DataLearner logoDataLearnerAI
Latest AI Insights
Model Evaluations
Model Directory
Model Comparison
Resource Center
Tool Directory

加载中...

DataLearner logoDataLearner AI

A knowledge platform focused on LLM benchmarking, datasets, and practical instruction with continuously updated capability maps.

产品

  • Leaderboards
  • 模型对比
  • Datasets

资源

  • Tutorials
  • Editorial
  • Tool directory

关于

  • 关于我们
  • 隐私政策
  • 数据收集方法
  • 联系我们

© 2026 DataLearner AI. DataLearner curates industry data and case studies so researchers, enterprises, and developers can rely on trustworthy intelligence.

隐私政策服务条款
  1. Home/
  2. Blog List/
  3. Blog Detail

Dask的本地集群配置和编程

2020/03/31 14:25:10
5,342 views
DaskPython分布式处理编程

Dask提供了多种分布式调度器,当缺少多台服务器时候,也可以通过本地集群来实现单机分布式的计算。这篇博客主要就是介绍如何实现Dask的单机分布式调度器。第一小节是简介,第二节是单机调度器的简写版本,第三节是单机调度器的完整版本,第四节是使用的一些示例。

  • 一、单机分布式
  • 二、Client
  • 三、本地集群
  • 四、使用示例
  • 设置3个worker
  • 将参数传递给Bokeh

一、单机分布式

使用dask.distributed调度器可以在一台计算机上很好地工作。由于以下原因,有时它比默认调度程序更可取:

  1. 它提供对异步API的访问,例如Futures
  2. 它提供了一个诊断仪表板(diagnostic dashboard),可以提供有关性能和进度的宝贵见解
  3. 它可以在本地执行更复杂地数据处理,因此在需要多个流程的工作负载上,它比多进程调度器(multiprocess)更有效。

您可以通过导入和创建不带参数的Client来创建dask.distributed调度程序。这将覆盖先前设置的任何默认值。

from dask.distributed import Client
client = Client()

如果已安装Bokeh,则可以直接到http://localhost8787/status 以查看诊断仪表板。如下图所示:

二、Client

您可以通过实例化不带参数的Dask Client来在计算机上轻松设置本地集群

from dask.distributed import Client
client = Client()

这将在您的本地进程以及运行单线程Worker的多个进程中设置一个调度程序。

如果要在同一进程中运行工作程序,则可以传递processes = False关键字参数。

client = Client(processes=False)

这可以避免worker之间的通信并且让您的计算释放了GIL。这在当主要使用NumPy或Dask数组时,非常实用。

三、本地集群

上述的Client()调用是创建LocalCluster并将其传递给客户端的简写。

from dask.distributed import Client, LocalCluster
cluster = LocalCluster()
client = Client(cluster)

而这里的程序与上述写法是等价的,但更为明确。您可能需要查看LocalCluster上可用的关键字参数,以了解在处理线程和进程混合程序时可以使用的选项,例如指定显式端口等。

四、使用示例

cluster = LocalCluster()
c = Client(cluster)

# 设置3个worker
cluster.scale(3)

# 将参数传递给Bokeh
LocalCluster(service_kwargs={'dashboard': {'prefix': '/foo'}})

DataLearner WeChat

Follow DataLearner WeChat for the latest AI updates

DataLearner 官方微信二维码
Back to Blog List

Related Blogs

  • 运行dask程序报错:Task exception was never retrieved
  • Dask concat throws ValueError: Shape of passed values is (xxx, xxx), indices imply (xxx, xxx)
  • Dask调度器简介
  • Dask的Merge操作性能对比
  • Dask分布式任务中包含写文件的方法时候,程序挂起不结束的解决方案
  • pandas.DataFrame.to_csv和dask.dataframe.to_csv在windows下保存csv文件出现多个换行结果
  • dask的dataframe的值变成1和foo的解决方法
  • 通过命令行的方式建立Dask集群

Hot Blogs

  • 1Dirichlet Distribution(狄利克雷分布)与Dirichlet Process(狄利克雷过程)
  • 2回归模型中的交互项简介(Interactions in Regression)
  • 3贝塔分布(Beta Distribution)简介及其应用
  • 4矩母函数简介(Moment-generating function)
  • 5普通最小二乘法(Ordinary Least Squares,OLS)的详细推导过程
  • 6使用R语言进行K-means聚类并分析结果
  • 7深度学习技巧之Early Stopping(早停法)
  • 8手把手教你本地部署清华大学的ChatGLM-6B模型——Windows+6GB显卡本地部署