Deep Learning炼丹经验总结——减少对设备性能消耗的方法

近期在拿paddlepaddle跑知识蒸馏,这一块遇上了很多因为硬件限制导致出问题的地方,查资料的时候发现在其他框架也有类似的问题(溢出、进程出问题等),因此在这里对目前收集到的解决方案做一下小结。

跑模型的时候很多人设备环境有限,公有GPU资源分配不上,多少求人不如求己,只能在自己电脑上部署深度学习环境,如果遇上了很多受设备限制无法跑的模型,可以参考这里对自己的代码或者环境做一下调整,或许会有帮助。

1、调低batchsize

batchsize的大小对设备的损耗是最直观的,每次计算的时候,总需要将一个batch内的数据全部投喂到模型中,让模型学习其中的特征,在这种情况下如果显卡算力有限,直接卡死了batchsize的上限。

毕竟不是谁家也有几百块显卡来跑大模型的,别人在几百块显卡上设置的batchsize,在自己的显卡上当然要对应调低一些。调低这个参数当然不是最优解,但是却是新手最需要优先考虑的方案。

2、控制一个任务只加载一个dataloader

这一块也是最近才发现的,最近经常遇上shm分区溢出,网上有人说是尽量只加载一个dataloader,一个dataloader在初始化成功的时候会默认持续占有一段存储空间,以便之后的取出数据,如果同时加载了trainloader和valloader,一些设备可能会承受不住。

这种堆砌着跑的方式,新手多少需要慎用,如果需要测试集的验证结果,建议新手先保存每一轮的权重文件,然后再设计代码单独对每轮的权重文件投喂测试集进行测试。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值