如何指定任务客户端?

时间:2019-04-03 17:31:34

标签: dask-distributed

我有一小群机器正在执行map-reduce类型的操作。头节点上有一个jupyter笔记本,一个dasch-scheduler和一个dask-worker。我想向jupyter笔记本中的所有计算机提交一些任务,并将所有结果返回到头节点。但是,我不想要等他们全部完成。因此,从我的Jupyter笔记本中,我想将期货的处理提交给特别是 local worker ,后者将结果返回时将其写入磁盘。这是一些代码来说明:

import dask.distributed
# the local machine has a dask-scheduler and a dask-worker.
client = dask.distributed.Client("localhost:8786")

def write_result(i, result):
    with open(str(i), "wb") as f:
        f.write(str(result))
def write_results(futures):
    for i, future in enumerate(dask.distributed.as_completed(futures)):
        write_results(i, future)
def inc(x):
    return x+1

futures = client.map(inc, range(100))
#this should happen ONLY ON THE LOCAL WORKER
client.submit(write_results, futures) 

我可以简单地拥有多个dask客户端,但这似乎很简单。有没有办法指定本地工人?

0 个答案:

没有答案