dgl.distributed.initialize

dgl.distributed.initialize(ip_config, max_queue_size=21474836480, net_type=None, num_worker_threads=1, use_graphbolt=False)[source]

初始化DGL的分布式模块

此函数初始化DGL的分布式模块。它在服务器或客户端模式下表现不同。在服务器模式下,它运行服务器代码且永不返回。在客户端模式下,它与服务器建立连接以进行通信,并创建用于分布式采样的工作进程。

Parameters:
  • ip_config (str) – ip_config文件的文件路径

  • max_queue_size (int) –

    客户端队列缓冲区的最大大小(默认约为20 GB)。

    请注意,20 GB只是一个上限,DGL使用零拷贝技术,不会一次性分配20GB内存。

  • net_type (str, optional) – [已弃用] 网络类型,只能是 'socket'。

  • num_worker_threads (int) – 每个采样器进程中的OMP线程数。

  • use_graphbolt (bool, optional) – 是否使用GraphBolt进行分布式训练。

注意

用户必须在调用任何DGL的分布式API和特定框架的分布式API之前调用此API。例如,当与Pytorch一起使用时,用户必须在Pytorch的pytorch.distributed.init_process_group之前调用此函数。