问题描述:
【操作步骤&问题现象】
在ModelArts平台,利用Acend-910进行训练时,运行时总会出现如下提示:
There are 308 node/nodes used reduce precision to selected the kernel!
解答:
这个不是错误,一些算子在Ascend上不支持高精度数据类型,MindSpore框架里会插入Cast算子,转成低精度数据类型进行后续计算。这个是跟TBE算子限制有关的,当前Ascend上有float16与float32这两种类型的互转。详细可见源码mindspore/python/mindspore/ops/_op_impl/tbe/下的TBE算子注册信息,比如有的算子只支持float16,当网络里输入float32时,就可能发生类型转换了。