Skip to content

Run 1783642118 ​

Trial run

Warning — trial run. This benchmark was executed with fewer than 10 instances per fuzzer and/or a time budget shorter than 24h. Results from trial runs are meant for debugging purposes and are not valid for extracting conclusions across different fuzzers.

Charts ​

Bugs Over TimeTime To KFinal DistributionPlateau And Late ShareInvariant Overlap (UpSet)Coverage Over TimeCorpus Size Over TimeSeq/s Over TimeTx/s Over TimeGas/s Over TimeCPU Usage Over TimeMemory Usage Over Time

Report ​

Fuzzer Benchmark Report (from bug-count CSV) ​

  • Time budget: 2.00h

Warning — trial run. This benchmark was executed with fewer than 10 instances per fuzzer and/or a time budget shorter than 24h. Results from trial runs are meant for debugging purposes and are not valid for extracting conclusions across different fuzzers.

Executive summary ​

This report is derived solely from cumulative bugs-found over time across repeated runs per fuzzer. It emphasizes robust, distribution-based metrics (median/IQR, success rates, time-to-k) and shape-based behavior (plateau time, late discovery share) instead of single-run time-to-first-bug.

Bugs found at fixed time budgets (median [IQR]) ​

FuzzerRuns1h
recon-fuzzer44 [4,4]
echidna43 [3,3]
foundry42 [2,2]
medusa42 [2,2]

Overall metrics ​

FuzzerAUC (norm)Plateau timeLate discovery shareFinal medianFinal IQR
recon-fuzzer0.9620.10h0.00040.00
echidna0.7130.10h0.00030.00
foundry0.5000.00h0.00020.00
medusa0.4750.10h0.00020.25

Milestones: time-to-k and success rates ​

Fuzzertime-to-1 (p50)time-to-3 (p50)time-to-5 (p50)reach-1 ratereach-3 ratereach-5 rate
recon-fuzzer0.00h0.10hinf100.0%100.0%0.0%
echidna0.10h0.10hinf100.0%100.0%0.0%
foundry0.00hinfinf100.0%0.0%0.0%
medusa0.10h0.20hinf100.0%25.0%0.0%

Throughput metrics (if supported by log format) ​

Values are run-level rates aggregated per fuzzer; n/a indicates the parser could not recover that metric from logs.

FuzzerRunsTx/s runsTx/s p50 [p25,p75]Gas/s runsGas/s p50 [p25,p75]
recon-fuzzer44631.01 [614.81,665.84]4130573160.50 [119853318.75,140341417.50]
echidna44794.12 [782.99,803.62]49418624050.50 [7280870591.00,11082433992.75]
medusa444490.50 [4280.75,4693.25]41381322497.00 [1355937305.25,1414724960.75]

Progress metrics from logs (fuzzer-specific proxies) ​

Coverage/corpus values are parsed from each fuzzer's native progress output and are useful for trend context, not strict cross-fuzzer equivalence.

FuzzerRunsSeq/s runsSeq/s p50 [p25,p75]Coverage runsCoverage p50 [p25,p75]Corpus runsCorpus p50 [p25,p75]
recon-fuzzer40n/a445192.00 [45161.75,45220.00]459.00 [55.50,68.00]
echidna40n/a444457.00 [44441.50,44457.00]446.00 [45.50,46.25]
medusa4443.50 [41.75,45.75]45155.00 [5155.00,5155.50]493.50 [92.75,94.00]

Statistical comparison (Mann-Whitney U test) ​

Pairwise Mann-Whitney U tests on end-of-budget bug counts (two-sided). Bonferroni correction applied for 6 comparison(s). Significance level: alpha = 0.05.

Warnings:

  • One or more fuzzers have fewer than 5 runs. Statistical power may be limited.
Fuzzer AFuzzer BMedian AMedian BU statisticp-valuep (corrected)Significant
recon-fuzzerechidna4316.00.01310.0787no
recon-fuzzerfoundry4216.00.01310.0787no
recon-fuzzermedusa4216.00.01770.1062no
echidnafoundry3216.00.01310.0787no
echidnamedusa3214.00.06030.3618no
foundrymedusa226.00.45331.0000no

No pairwise comparison reached significance after Bonferroni correction.

Note: The Mann-Whitney U test assesses whether one fuzzer tends to find more bugs than another across runs. It does not measure effect size or practical importance. Small sample sizes (fewer than 5 runs) reduce statistical power.

Shape-based interpretation (rules of thumb) ​

  • Fast-start / early-plateau: high early checkpoint median + early plateau time + low late discovery share.
  • Steady: moderate AUC, later plateau, consistent improvements across checkpoints, moderate variance.
  • Slow-burn / late-surge: low early checkpoints but high late discovery share and later plateau time; often higher final median.

Limitations ​

  • Core metrics in this section are count-based; use broken_invariants.md / broken_invariants.csv for invariant identities.
  • Severity, exploitability, and root-cause uniqueness cannot be measured directly without richer per-bug metadata.
  • Harness design still affects results; mitigate by keeping harness identical across fuzzers and reporting many runs.

Broken invariants ​

  • Budget filter: 2.00h
  • Events considered: 45 / 45
  • Unique invariants: 6

Warning — trial run. This benchmark was executed with fewer than 10 instances per fuzzer and/or a time budget shorter than 24h. Results from trial runs are meant for debugging purposes and are not valid for extracting conclusions across different fuzzers.

Per-fuzzer totals ​

FuzzerInvariants
echidna3
foundry2
medusa3
recon-fuzzer4

High-level overlap ​

  • Shared by all active fuzzers: 2
  • Exclusive to echidna: 1
  • Exclusive to foundry: 0
  • Exclusive to medusa: 1
  • Exclusive to recon-fuzzer: 2

Grouped invariants ​

Exclusive to echidna (1)
  • AssertionFailed
Exclusive to foundry (0)

None.

Exclusive to medusa (1)
  • testBalanceAtInFuture
Exclusive to recon-fuzzer (2)
  • invariantWithdrawAllTokensShouldNotRevert
  • testReceiveStreamsShouldNotRevert
Shared by all active fuzzers (2)
  • assert_canary
  • invariant_canary

Runner resource usage ​

  • Budget filter: 2.00h
  • Instances with metrics: 16
  • Total samples: 22875

Per-fuzzer medians (across instances) ​

FuzzerInstancesCPU active avg (%)CPU active peak (%)Memory used avg (GiB)Memory used peak (GiB)Memory used avg (%)Memory used peak (%)
echidna496.7398.4719.5420.7763.7567.78
foundry46.2922.500.971.353.164.41
medusa497.8899.251.041.533.384.98
recon-fuzzer495.6998.402.913.249.4810.59

Instance stats ​

InstanceFuzzerSamplesDuration (h)CPU active avg (%)CPU active peak (%)Memory avg (GiB)Memory peak (GiB)Memory avg (%)Memory peak (%)
i-021127ec92d86b1c1-echidna-v2.3.1echidna14232.0096.6598.5419.5620.7663.8467.75
i-081d7cb3adfd28178-echidna-v2.3.1echidna14242.0096.5098.4219.5920.8963.9368.16
i-0a3959c0262136e94-echidna-v2.3.1echidna14242.0096.8198.5219.5120.7163.6767.58
i-0a97ec43f7f2e2a82-echidna-v2.3.1echidna14242.0096.8398.3919.4720.7863.5267.81
i-039b94ea4919f09d9-foundry-git-907ba08foundry14362.006.2811.110.961.433.124.67
i-03df7cb87e5c23cab-foundry-git-907ba08foundry14362.006.2820.000.961.333.134.33
i-0435b55de2f72920c-foundry-git-907ba08foundry14362.006.2927.270.981.353.214.40
i-04fc70b6cdc7c562a-foundry-git-907ba08foundry14362.006.2925.000.981.353.194.42
i-0370e455146273745-medusa-v1.4.1medusa14302.0097.8799.261.021.453.344.73
i-0510adedd9dbcba65-medusa-v1.4.1medusa14302.0097.8899.231.021.613.335.25
i-0599a331498d63ae6-medusa-v1.4.1medusa14302.0097.7899.031.051.603.425.22
i-07c558948e9805d92-medusa-v1.4.1medusa14302.0098.0499.291.111.453.614.73
i-062a33a36ea5f2677-recon-v0.4.6recon-fuzzer14292.0095.6398.442.903.279.4710.66
i-06b3c357357148581-recon-v0.4.6recon-fuzzer14292.0096.0598.902.933.229.5510.52
i-0d93bc9f8f6ccc83c-recon-v0.4.6recon-fuzzer14292.0095.7498.242.903.219.4510.49
i-0edba150a66bdd06e-recon-v0.4.6recon-fuzzer14292.0095.6498.352.913.279.5010.66

Manifest ​

  • scfuzzbench_commit: 263edb652de84d394c9548a2780dba676fc1da00
  • target_repo_url: https://github.com/scfuzzbench/drips-fuzzing-scfuzzbench
  • target_commit: f3748e16ff50a0a2b38eb348031b6cfdf6aeb361
  • benchmark_type: property
  • instance_type: c6a.4xlarge
  • instances_per_fuzzer: 4
  • timeout_hours: 2
  • aws_region: us-east-1
  • ubuntu_ami_id: ami-0a02a779008fa3b99
  • foundry_version: v1.7.1
  • foundry_git_repo: https://github.com/foundry-rs/foundry
  • foundry_git_ref: 907ba0817e8feb2404da9d506a12b69834cfb393
  • echidna_version: 2.3.1
  • medusa_version: 1.4.1
  • recon_version: 0.4.6
  • fuzzer_keys: echidna, foundry, medusa, recon-fuzzer

Artifacts ​

Fully static. Generated in CI from S3 run artifacts.