指定要与 dask.config 一起使用的客户端

Specifying a Client to use with dask.config

新的 Dask 配置鼓励使用命名 scheduler。这适用于线程、多处理等。它还反对使用 get,这是合理的。但是它确实提出了以下问题。

如果有几个不同的 Dask 分布式客户端,可用于计算,如何选择一个客户端在上下文中使用?

截至 dask.__version__ == 0.18.1 为止,对此没有可靠的答案。今天有两个实用的答案,但尚不清楚这将如何在未来自行解决。

  1. 继续使用get=

    with dask.config.set(get=my_preferred_client.get):
        ...
    
  2. 使用distributed.client.temp_default_client

    from distributed.client import temp_default_client
    with temp_default_client(my_preferred_client):
        ...
    

但是我不希望这些方法中的任何一种能够永远存在。一直在谈论围绕调度程序构建另一个协议,但这项工作尚未完成(截至 2018 年 6 月 29 日,与往常一样,您应该查看文档以获取最新答案)。