pytorch分布式训练

  1. 这两篇有两种方法可以直接上代码
    DataParallel(DP):Parameter Server模式,一张卡位reducer,实现也超级简单,一行代码。
    DistributedDataParallel(DDP):All-Reduce模式,本意是用来分布式训练,但是也可用于单机多卡。
    链接:https://fyubang.com/2019/07/23/distributed-training3/
    链接:https://www.cnblogs.com/yh-blog/p/12877922.html

  2. 这篇方法很全:当代研究生应当掌握的并行训练方法(单机多卡)
    nn.DataParallel简单方便的 nn.DataParallel
    torch.distributed 使用 torch.distributed 加速并行训练
    torch.multiprocessing 使用 torch.multiprocessing 取代启动器
    apex 使用 apex 再加速
    horovod horovod 的优雅实现
    链接:https://zhuanlan.zhihu.com/p/98535650

  3. apex 混合精度训练 github
    其实混合精度训练就是平时用float16而不是float32,但是在激活函数梯度可能过小(如e-20+e-3)导致无法更新时候或者数据下溢时,先用float32再在后面操作舍入继续用float16 https://github.com/NVIDIA/apex/blob/master/examples/simple/distributed/distributed_data_parallel.py

你可能感兴趣的:(图神经网络,推荐系统)