update snakefile
This commit is contained in:
parent
a328ddfd5f
commit
eec998c426
@ -1,6 +1,16 @@
|
|||||||
import csv
|
import csv
|
||||||
|
import os
|
||||||
def_flags="--no-default-features --features std,snapshot_restore,singlecore,restarting"
|
def_flags="--no-default-features --features std,snapshot_restore,singlecore,restarting"
|
||||||
remote="mnt/"
|
remote="mnt/"
|
||||||
|
RUNTIME=21600
|
||||||
|
TARGET_REPS_A=20
|
||||||
|
TARGET_REPS_B=10
|
||||||
|
NUM_NODES=2
|
||||||
|
REP_PER_NODE_A=int(TARGET_REPS_A/NUM_NODES)
|
||||||
|
REP_PER_NODE_B=int(TARGET_REPS_B/NUM_NODES)
|
||||||
|
NODE_ID= 0 if os.getenv('NODE_ID') == None else int(os.environ['NODE_ID'])
|
||||||
|
MY_RANGE_A=range(NODE_ID*REP_PER_NODE_A,(NODE_ID+1)*REP_PER_NODE_A)
|
||||||
|
MY_RANGE_B=range(NODE_ID*REP_PER_NODE_B,(NODE_ID+1)*REP_PER_NODE_B)
|
||||||
|
|
||||||
rule build_showmap:
|
rule build_showmap:
|
||||||
output:
|
output:
|
||||||
@ -20,9 +30,9 @@ rule build_feedlongest:
|
|||||||
shell:
|
shell:
|
||||||
"cargo build --target-dir {output} {def_flags},feed_longest"
|
"cargo build --target-dir {output} {def_flags},feed_longest"
|
||||||
|
|
||||||
rule build_afl_longest:
|
rule build_frafl:
|
||||||
output:
|
output:
|
||||||
directory("bins/target_afl_longest")
|
directory("bins/target_frafl")
|
||||||
shell:
|
shell:
|
||||||
"cargo build --target-dir {output} {def_flags},feed_afl,feed_longest"
|
"cargo build --target-dir {output} {def_flags},feed_afl,feed_longest"
|
||||||
|
|
||||||
@ -62,9 +72,9 @@ rule build_state_int:
|
|||||||
shell:
|
shell:
|
||||||
"cargo build --target-dir {output} {def_flags},feed_systemtrace,fuzz_int"
|
"cargo build --target-dir {output} {def_flags},feed_systemtrace,fuzz_int"
|
||||||
|
|
||||||
rule build_afl_longest_int:
|
rule build_frafl_int:
|
||||||
output:
|
output:
|
||||||
directory("bins/target_afl_longest_int")
|
directory("bins/target_frafl_int")
|
||||||
shell:
|
shell:
|
||||||
"cargo build --target-dir {output} {def_flags},feed_afl,feed_longest,fuzz_int"
|
"cargo build --target-dir {output} {def_flags},feed_afl,feed_longest,fuzz_int"
|
||||||
|
|
||||||
@ -144,7 +154,7 @@ rule run_bench:
|
|||||||
export TIME_DUMP=$(pwd)/{output[0]}
|
export TIME_DUMP=$(pwd)/{output[0]}
|
||||||
export CASE_DUMP=$(pwd)/{output[0]}.case
|
export CASE_DUMP=$(pwd)/{output[0]}.case
|
||||||
export TRACE_DUMP=$(pwd)/{output[0]}.trace
|
export TRACE_DUMP=$(pwd)/{output[0]}.trace
|
||||||
export FUZZ_ITERS=21600
|
export FUZZ_ITERS={RUNTIME}
|
||||||
export FUZZER=$(pwd)/{input[1]}/debug/fret
|
export FUZZER=$(pwd)/{input[1]}/debug/fret
|
||||||
set +e
|
set +e
|
||||||
../fuzzer.sh > {output[1]} 2>&1
|
../fuzzer.sh > {output[1]} 2>&1
|
||||||
@ -224,15 +234,15 @@ rule all_bins:
|
|||||||
|
|
||||||
rule all_main:
|
rule all_main:
|
||||||
input:
|
input:
|
||||||
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['random','afl_longest','state','feedgeneration10'], target=['waters','watersv2'],num=range(0,10))
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['random','afl','feedgeneration10','state'], target=['waters','watersv2'],num=range(0,3))
|
||||||
|
|
||||||
rule all_main_int:
|
rule all_main_int:
|
||||||
input:
|
input:
|
||||||
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['random_int','afl_longest_int','state_int','feedgeneration10_int'], target=['waters_int','watersv2_int'],num=range(0,10))
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['random_int','afl_int','feedgeneration10_int','state_int'], target=['waters_int','watersv2_int'],num=range(0,4))
|
||||||
|
|
||||||
rule all_compare_feedgeneration:
|
rule all_compare_feedgeneration:
|
||||||
input:
|
input:
|
||||||
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['feedgeneration1','feedgeneration10','feedgeneration100'], target=['waters','watersv2'],num=range(0,10))
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['feedgeneration1','feedgeneration10','feedgeneration100'], target=['waters_int','watersv2'],num=range(0,10))
|
||||||
|
|
||||||
rule all_compare_feedgeneration_int:
|
rule all_compare_feedgeneration_int:
|
||||||
input:
|
input:
|
||||||
@ -240,12 +250,25 @@ rule all_compare_feedgeneration_int:
|
|||||||
|
|
||||||
rule all_compare_afl:
|
rule all_compare_afl:
|
||||||
input:
|
input:
|
||||||
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['afl','afl_longest','feedlongest'], target=['waters','watersv2'],num=range(0,10))
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['afl','frafl','feedlongest'], target=['waters','watersv2'],num=range(0,10))
|
||||||
|
|
||||||
rule all_compare_afl_int:
|
rule all_compare_afl_int:
|
||||||
input:
|
input:
|
||||||
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['afl_int','afl_longest_int','feedlongest_int'], target=['waters_int','watersv2_int'],num=range(0,10))
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['afl_int','frafl_int','feedlongest_int'], target=['waters_int','watersv2_int'],num=range(0,10))
|
||||||
|
|
||||||
rule all_images:
|
rule all_images:
|
||||||
input:
|
input:
|
||||||
expand("{remote}timedump/{fuzzer}/{target}.{num}.trace.csv.png",remote=remote, fuzzer=['state_int','feedgeneration_int'], target=['waters_int','watersv2_int'],num=range(0,10))
|
expand("{remote}timedump/{fuzzer}/{target}.{num}.trace.csv.png",remote=remote, fuzzer=['afl','feedgeneration10','state'], target=['waters','watersv2'],num=range(0,3))
|
||||||
|
|
||||||
|
rule all_images_int:
|
||||||
|
input:
|
||||||
|
expand("{remote}timedump/{fuzzer}/{target}.{num}.trace.csv.png",remote=remote, fuzzer=['afl_int','feedgeneration10_int','state_int'], target=['waters_int','watersv2_int'],num=range(0,3))
|
||||||
|
|
||||||
|
rule clusterfuzz:
|
||||||
|
input:
|
||||||
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['random','afl','feedgeneration10','state'], target=['waters','watersv2'],num=MY_RANGE_A),
|
||||||
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['random_int','afl_int','feedgeneration10_int','state_int'], target=['waters_int','watersv2_int'],num=MY_RANGE_A),
|
||||||
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['feedgeneration1','feedgeneration10','feedgeneration100'], target=['waters_int','watersv2'],num=MY_RANGE_B),
|
||||||
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['feedgeneration1_int','feedgeneration10_int','feedgeneration100_int'], target=['waters_int','watersv2_int'],num=MY_RANGE_B),
|
||||||
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['afl','frafl','feedlongest'], target=['waters','watersv2'],num=MY_RANGE_B),
|
||||||
|
expand("timedump/{fuzzer}/{target}.{num}", fuzzer=['afl_int','frafl_int','feedlongest_int'], target=['waters_int','watersv2_int'],num=MY_RANGE_B),
|
Loading…
x
Reference in New Issue
Block a user