NPU上的单卡训练将很快完成,下面对执行日志的关键位置进行说明。
这部分日志可以看到NPU初始化时的配置项(如果您修改了初始化配置项,这里也会有所体现)以及初始化成功信息,由于我们调用npu.open时没有传入任何参数,所以默认在NPU:0上进行了初始化。
这部分日志只有在您使用了Dataset作为预处理Pipeline,并且function的入参是Iterator时才会打印。
从这两条日志上可以看出,TF Adapter启动了预处理H2D线程,同时创建了名为AnonymousIterator0的HDC数据传输通道(该名称与TF2中Iterator的shared_name一致)。
这个日志的打印内容取决于您是否采用了循环下沉的编码方式,本次迁移中,我们采用了该编码方式,所以Graph xxx can loop的判定结果是true,同时设置了NPU上的训练循环大小为32。后两行日志可以看出,开启了总共32次的异步数据传输,然后向NPU设备下发了执行32次训练的请求。
这部分日志表示训练过程正在执行。
其中,下面的日志表示32次异步的数据传输成功完成,如果数据传输过程中出现错误,您也将看到相关打印。
训练结束后,进程退出,会依次销毁HDC数据传输线程(如果存在),关闭Graph Engine引擎。