A framework to employ coverage-guided fuzzing to test Deep Learning APIs at scale.
- testharness: Contains the test harness for fuzzing.
bash build_docker.sh
- Common Flags
--dll
: Target DL library, Should be obne oftf
,torch
--version
: Version of the DL library, currently supported versions are2.16
and2.19
(fuzz only) for tensorflow.--mode
: Should be one offuzz
,cov
--num_parallel
: Number of parallel experiments to run.
python3 -u run.py --dll tf --version 2.16 --mode fuzz
Results are stored in _fuzz_result/
directory.
🚀 Want Faster? Try
python3 -u run.py --dll tf --version 2.16 --mode fuzz --num_parallel 40
python3 -u run.py --dll tf --version 2.16 --mode fuzz --check_valid
Example output:
Build Summary: Build status: 668/1452 TensorFlow APIs built successfully.
Results are stored in _fuzz_result/build_status
directory.
python3 -u run.py --dll tf --version 2.16 --mode fuzz --time_budget 300
This will set the time budget for each fuzzing run to 300 seconds. The default is 180 seconds.
python3 -u run.py --dll tf --version 2.16 --mode cov
Results are stored in _cov_result/
directory.