推广 热搜: 百度  搜索引擎  企业  可以  使用  选择  page 

12.6. 多GPU的简洁实现

   日期:2024-12-31     作者:vhljw    caijiyuan  
核心提示:每个新模型的并行计算都从零开始实现是无趣的。 此外,优化同步工具以获得高性能也是有好处的。 下面我们将展示如何使用深

每个新模型的并行计算都从零开始实现是无趣的。
此外,优化同步工具以获得高性能也是有好处的。
下面我们将展示如何使用深度学习框架的高级API来实现这一点

12.6.1. 简单网络

 

12.6.2. 网络初始化

我们将在训练回路中初始化网络

 

12.6.3. 训练

如前所述,用于训练的代码需要执行几个基本功能才能实现高效并行

  • 需要在所有设备上初始化网络参数。

  • 在数据集上迭代时,要将小批量数据分配到所有设备上。

  • 跨设备并行计算损失及其梯度。

  • 聚合梯度,并相应地更新参数。

最后,并行地计算精确度和发布网络的最终性能。除了需要拆分和聚合数据外,训练代码与前几章的实现非常相似。

 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e7JBJHYo-1665751027913)(https://zh.d2l.ai/_images/output_multiple-gpus-concise_2e111f_50_1.svg)]

接下来我们使用2个GPU进行训练。

 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-91Bo8qL6-1665751027914)(https://zh.d2l.ai/_images/output_multiple-gpus-concise_2e111f_59_1.svg)]

12.6.4. 小结

  • 神经网络可以在(可找到数据的)单GPU上进行自动评估。

  • 每台设备上的网络需要先初始化,然后再尝试访问该设备上的参数,否则会遇到错误。

本文地址:http://ww.kub2b.com/tnews/3975.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类生活信息

文章列表
相关文章
最新动态
推荐图文
生活信息
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号