PaddlePaddle 1.6.3
XiaoguangHu01
released this
20 Jan 02:55
·
1 commit
to release/1.6
since this release
Release Notes
性能优化
- 优化ERNIE模型的CPU预测性能,BS=1时性能略优于竞品。
- 在FC的CPU实现中对GEMM进行Padding,使得ERNIE模型FP32的单线程预测性能提升8.97%,20线程预测性能提升42.52%。
- layer_norm实现多线程优化,该op 20线程性能提升4.73倍,ERNIE模型20线程性能提升8.88%。
Bug修复
- 修复由于动态图弃用reshape inplace策略而导致无法进行多卡训练的问题。
- 修复softmax_with_cross_entropy_op在axis dimension为1时出现Tensor未初始化报错的问题。
- 修复指数滑动平均(EMA) 连续多次 apply 时结果不正确的问题。
- 修复了Adagrad中设置decay参数不生效的问题。
- 修复了match_matrix_op设置较大lod整型溢出的问题。
- 修复 InitDevices() 在同一进程中前后调用的行为不一致问题。
- 一些 Passes 在 上一级 Scope 中创建中间变量,会引起克隆时 Scope 错误的修复。
- 修复 tensorrt calib engine key bug。
- 修复conv_elementwise_add_fuse_pass导致Xception模型预测出错问题。
- 修复multihead中softmax计算错误的问题。
- 修复conv_fusion在windows环境下无法找到GPU kernel的问题。
- 修复batch_norm_grad在scale和bias一个可训一个不可训练时会产生Shape为0梯度,导致后续若干错误的问题。
- 修复all_reduce会对Shape为0梯度做聚合操作的问题,添加断言定位出错Tensor。
- 针对多机开启sync_batch_norm会引入新拓扑依赖导致hang住的问题,对Fleet接口配置保持拓扑顺序避免hang住。
预测部署
- 修复由于图优化阶段node排序不稳定导致paddle-TRT int8 calib有时无法加载已有校准表,会重新生成校准表的问题。