Proj CDeepFuzz Paper Reading: Fuzzing Deep Learning Compilers with HirGen
Abstract
背景:在最近一项bug study中,high-level IR的优化导致44.92%的bug(Q?)
本文: HirGen
Github: https://github.com/haoyang9804/HirGen
Task: fuzzing the optimization of high-level IRs in Deep Learning Compiler
Method: 1. 3 coverage criteria to generate computational graphs(Operator-datatype coverage, operator-shape coverage, operator-edge coverage) 2. use high-level IR's language features 3. 3 test oracles(Crash, Result Inconsistency among the Original High-Level IR, the Optimized High-Level IR and the Mutated High-Level IR, Result Inconsistency across Hardware Devices) using differential testing and metamorphic testing
实验:
对象:TVM
Competitors: TVMFuzz, MT-DLComp, Lemon, NNSmith
效果:
- detected 21 bugs, 17 confirmed, 12 fixed
- detect 10 crashes and inconsistencies that cannot be detected by others
- evaluate the usefulness of criteria and oracles