我们是否可以创建一个具有多个CPU机器以及多台GPU机器的Dask集群。?

时间:2018-04-16 10:09:53

标签: dask dask-distributed dask-delayed

我们可以创建一个带有一些CPU和一些GPU机器的dask集群。如果是,那么如何控制某个任务必须只在CPU机器上运行,或者某些其他类型的任务只能在GPU机器上运行,如果没有指定,它应该选择哪个机器是免费的。?

dask是否支持这种类型的集群。什么是控制在特定CPU / GPU机器上运行的任务的命令。?

1 个答案:

答案 0 :(得分:1)

您可以指定Dask工作人员具有某些抽象资源

dask-worker scheduler:8786 --resources "GPU=2"
dask-worker scheduler:8786 --resources "GPU=2"
dask-worker scheduler:8786 --resources "MEMORY=100e9"

并且任务在执行期间消耗这些资源。

processed = [client.submit(process, d, resources={'GPU': 1}) for d in data]
final = client.submit(aggregate, processed, resources={'MEMORY': 70e9})

您可以使用它来为具有GPU的计算机建模。请注意,这些术语GPU和MEMORY只是抽象术语。他们可以很容易地成为FOO和BAR。

有关详细信息,请参阅documentation on worker resources