-
Notifications
You must be signed in to change notification settings - Fork 5.6k
OP Test Input Shape Requirements
zhupengyang edited this page Jan 19, 2020
·
9 revisions
OP Test Input Shape Requirements (English Version)
规范概要:
- 第1节,本规范说明
- 第2节,本规范检查内容
- 第3节,CI检查内容
- 第4节,未通过检查的修改建议
补充说明:
- 规范在执行过程中,可能会发现现有规范未考虑到的方面,需要在实施过程中不断补充与完善,也请大家积极反馈意见。
目前,OP单测中存在输入shape过小导致测试不够健全的问题。原因是有些kernel的反向计算会与shape大小有关系,如果shape太小,反向梯度检查通过,但是反向计算可能依然有问题。
为了更好得保证Op单测覆盖范围,提出了本条规范,在OpTest中添加了相应检测方法,在CI中添加了对本规范白名单的检查。
- OP单测中需要满足条件:所有测试用例的输入维度的乘积必须大于等于100。
- 背景:对于待修复的OP,加入本规范的待修复白名单,跳过检查。白名单路径:python/paddle/fluid/tests/unittests/white_list/check_shape_white_list.py
- CI中增加对白名单的检查,如果需要修改,请联系特定人员审核。
特殊情况:
- 当单测被skip_check_grad_ci装饰,会跳过必须本次shape的检查。
- 如果使用skip_check_grad_ci跳过shape检查,请联系特定人员审核。
- 放大所有case的输入shape到100以上
- 如果情况特殊,请使用skip_check_grad_ci跳过shape检查,同时在reason开头添加"[skip shape check]"字样。参考PR#22332
若遇到其他问题,请联系 @zhupengyang。