Dask-CUDA
Dask-CUDA 是一个扩展了 Dask.distributed 的单机 LocalCluster 和 Worker 的库,用于分布式 GPU 工作负载。 它是 RAPIDS 开源软件库套件的一部分,用于 GPU 加速的数据科学。
动机
虽然Distributed可以通过诸如cuDF、CuPy和Numba等库来利用GPU工作负载,但Dask-CUDA提供了Distributed所不具备的几项独特功能:
自动实例化每个GPU的工作器 – 使用Dask-CUDA的LocalCUDACluster或
dask cuda worker
CLI将自动为执行节点上的每个可用GPU启动一个工作器,避免了显式选择GPU的需要。自动设置CPU亲和性 – 每个GPU的CPU亲和性设置是自动完成的,防止内存传输采取次优路径。
自动选择InfiniBand设备 – 当在InfiniBand上启用UCX通信时,Dask-CUDA会自动为每个GPU选择最佳的InfiniBand设备(有关配置UCX通信的说明,请参见UCX集成)。
GPU内存溢出 – 对于内存密集型工作负载,当GPU达到默认或用户指定的内存利用率限制时,Dask-CUDA支持从GPU溢出到主机内存。
GPU内存分配 – 当使用UCX通信时,可以使用RAPIDS内存管理器为每个GPU分配内存池,以避免否则需要的高成本内存缓冲区映射。
目录
入门指南
附加功能