【tf2-基础】分布式训练

  • GPU设置
    • 默认用全部GPU并且内存全部占满
    • 避免内存不浪费
      • 内存自增长
      • 虚拟设备机制
    • 多GPU使用
      • 虚拟GPU&实际GPU
      • 手工&分布式
    • API列表
      • tf.debugging.set_log_device_placement
      • tf.config.experimental.set_visible_devices
      • tf.config.experfimental.list_logical_devices
      • tf.config.experfimental.list_phyical_devices
      • tf.config.experfimental.set_memory_growth
      • tf.config.experfimental.VirtualDeviceConfiguration
      • tf.config.set_soft_device_placement 自动分配计算资源
  • 分布式策略
    • MirroredStrategy

      • 同步式分布式训练
      • 适用于一机多卡
      • 每个GPU都有网络结构的所有参数,这些参数会被同步
      • 数据并行
        • batch数据且为N分给各个GPU
        • 梯度聚合然后更新给各个GPU上的参数
    • CentralStorageStrategy

      • 参数不是每个GPU上,而是存储在一个设备上
        • CPU或者唯一的GPU上
      • 计算是在所有GPU上并行的
        • 除了参数计算
    • MultiworkerMirroredStrategy

      • 适用于多机多卡的情况
      • 在这里插入图片描述
    • TPUStrategy

      • 使用在TPU上的策略
    • ParameterServerStrategy 参数服务策略

      • 异步分布式

      • 更加适用于大规模分布式系统

      • 机器分为server和worker

      • 在这里插入图片描述

      • 在这里插入图片描述

    • 同步异步的差异

      • 多机多卡
        • 异步可以便面短板效应
      • 一机多卡
        • 同步可以避免过多的通信
      • 异步的计算会增加模型的泛化能力
        • 异步不是严格正确的,所以模型更容忍错误
  • nvidia相关命令
    • nvidia-msi 查看GPU运行情况
    • watch -n 0.1 -x nvidia-smi 监控nvidia-smi命令
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值