cudnn.benchmark = True

代码设置`cudnn.benchmark=True`可启用cuDNN的自动调优功能,优化GPU运行效率。当网络输入数据稳定时,此选项能为每个卷积层寻找最佳算法,提高速度。但若输入数据频繁变化,可能导致不断优化反而降低效率。cuDNN是针对深度学习的GPU加速库,通常默认为False,适合网络结构固定且输入形状不变的场景。
摘要由CSDN通过智能技术生成

代码:

cudnn.benchmark = True

代码释意:通过如上设置让内置的cuDNNauto-tuner自动寻找最适合当前配置的高效算法,来达到优化运行效率的问题。
遵循准则:

  • 网络的输入数据维度或类型上变化不大,设置为true可以增加运行效率;
  • 如果网络的输入数据在每个iteration都变化的话,会导致cnDNN每次都会去寻找一遍最优配置,这样反而会降低运行效率;

Note:

  • cuDNN是英伟达专门为深度神经网络所开发出来的GPU加速库,针对卷积、池化等等常见操作做了非常多的底层优化,比一般的GPU程序要快很多。在使用cuDNN的时候,默认为False
  • 设置为True将会让程序在开始时花费一点额外时间,为整个网络的每个卷积层搜索最适合它的卷积实现算法,进而实现网络的加速。适用场景是网络结构固定,网络输入形状不变(即一般情况下都适用)。反之,如果卷积层的设置一直变化,将会导致程序不停地做优化,反而会耗费更多的时间。

转载自:torch.backends.cudnn.benchmark = true的作用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值