代码之家  ›  专栏  ›  技术社区  ›  piokuc

dask:指定进程数

  •  2
  • piokuc  · 技术社区  · 8 年前

    我正在尝试使用DASK来进行一些令人尴尬的并行处理。对于某些reason,我必须使用dask,但使用 multiprocessing.Pool(5).map .

    例如:

    import dask
    from dask import compute, delayed
    
    def do_something(x): return x * x
    
    data = range(10)
    delayed_values = [delayed(do_something)(x) for x in data]
    results = compute(*delayed_values, scheduler='processes')
    

    它可以工作,但显然它只使用一个过程。

    如何配置DASK,使其使用5个进程的池进行计算?

    2 回复  |  直到 8 年前
        1
  •  4
  •   Scratch'N'Purr    8 年前

    num_workers compute

    results = compute(*delayed_values, scheduler='processes', num_workers=5)
    
        2
  •  2
  •   moshevi    8 年前

    import dask
    from multiprocessing.pool import Pool
    
    dask.config.set(pool=Pool(5))
    

    page

    answer