Advertisement

优化cuDNN中的Tensor Ops(Python版)

阅读量:

在cuDNN中对Tensor Ops进行优化
自Tesla V100 GPU搭载神经网络模型以来,各类神经网络架构已广泛借助NVIDIA Tensor Cores来提升深度学习的计算效率。例如,基于Tensor Core实现的方案成功刷新了ResNet50训练的速度记录。
NVIDIA开发的cuDNN库为CUDA开发者提供了优化循环神经网络与卷积神经网络的工具,从而实现GPU加速。该库详细介绍了用户如何便捷地利用Tensor Core执行卷积操作,并提供了相应的说明文档及代码示例。文中还总结了一些适用于cuDNN应用的基本准则,包括FP16数据处理规范、张量维度设置规则以及ALGO_1的具体使用方式等。
随着cuDNN版本的更新,诸多限制条件被逐步解除。例如,cuDNN 7.2版本取消了FP16数据格式的相关约束,而7.3版本则进一步放宽了针对打包式NCHW张量数据的尺寸限制,并进行了相应改进。
关于在CUDA环境下使用Tensor Core的相关讨论指出,通常情况下张量操作会采用FP16输入数据,如图1所示。尽管如此,当前卷积相关的cuDNN API允许用户将FP32格式的输入数据转换为FP16以供运算使用;若有必要,输出结果也可选择性地转换回FP32格式进行后续处理。

![在这里插入图片描述](https://ad.itadn.com/c/weblog/bl

全部评论 (0)

还没有任何评论哟~