A fuzzing tool built upon NNSmith to find bugs in the new compilers of PyTorch, covering more dynamic features to be tested (control flow, loops, tensor manipulation, etc). Already found ~20 bugs of PyTorch compiler (see https://github.com/pytorch/pytorch/issues/created_by/soodoshll and https://github.com/openai/triton/issues/created_by/soodoshll)
- newest PyTorch compiled from source
- NNSmith
Add this directory to PATH
. Then run
python -m temisu.fuzz
Transformations that guarantee EMI (equivalence modulo inputs)
Inserting true conditions
- Elementwise
- Reduction
- MatMul
- Matmul then inverse
- Backup, modify then recover
- Inplace Operator
- Offloading
- Gradient Checkpointing
- Choose some instructions to form a new (sub)function
- Tuple
- List
- Dict