【Pytorch】torch.backends.cudnn.benchmark 作用
作用
針對你當前的硬件,找到最合適的算法。(注意,很多代碼里會有import torch.backends.cudnn as cudann,所以其實torch.backends.cudnn.benchmark和cudnn.benchmark是一回事)
使用注意事項
It enables benchmark mode in cudnn.
benchmark mode is good whenever your input sizes for your network do not vary. This way, cudnn will look for the optimal set of algorithms for that particular configuration (which takes some time). This usually leads to faster runtime.
But if your input sizes changes at each iteration, then cudnn will benchmark every time a new size appears, possibly leading to worse runtime performances.
翻譯過來就是:當你網絡的輸入大小不變時,torch.backends.cudnn.benchmark = True可以讓你的網絡跑得更快。但是如果你網絡的輸入大小在變化,torch.backends.cudnn.benchmark = True反而會讓你的網絡跑得更慢,因為每次改變輸入大小都會計算一次。
避免波動影響速度
torch.backends.cudnn.deterministic = True
參考鏈接
https://discuss.pytorch.org/t/what-does-torch-backends-cudnn-benchmark-do/5936/2
總結
以上是生活随笔為你收集整理的【Pytorch】torch.backends.cudnn.benchmark 作用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php日期转微秒,使用PHP生成独特的微
- 下一篇: Qt 摄像头