crytic / crytic/echidna

[Bug-Candidate]: Maximize CPU output when running fuzzer

Open
#1,207 18 comments 1 reaction 0 assignees View on GitHub
Dominant language
Haskell
Stars
3.2k
Forks
432
Avg merge
1d 20h
Merged PRs (30d)
5

Description

### Describe the issue:

When deployed on a 16 core machine, with 15 workers, the CPU usage seems to be maxed at about 40-50%. When deployed on an 8 core machine, with 7 workers, CPU usage has only ever hit a max of around 65%.

### Code example to reproduce the issue:

Follow instructions for reproduction here, and if testing on cloudexec, then run `make ec` (for echidna-cloud) or `make el` (echidna-local).

https://github.com/curvance/Curvance-CantinaCompetition/tree/CodeFAQAndAdjustments/tests/fuzzing

### Version:

Echidna 2.23 & previous

### Relevant log output:

_No response_

Contributor guide

Open the contributing guide

Research direction

Follow the linked Curvance-CantinaCompetition fuzzing reproduction and run it with `make ec` or `make el`, comparing CPU usage on the stated worker and core counts. Read the relevant Echidna execution path to identify why utilization remains below the available CPU capacity; done means the fuzzer uses substantially more of the available cores under these reproductions.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell, solidity
Domain
performance, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.