Skip to content

Add job size benchmark script + on-demand CI workflow - #8495

Open
TomasVotruba wants to merge 2 commits into
mainfrom
tv-jobsize
Open

Add job size benchmark script + on-demand CI workflow#8495
TomasVotruba wants to merge 2 commits into
mainfrom
tv-jobsize

Conversation

@TomasVotruba

Copy link
Copy Markdown
Member

Adds a benchmark that measures Rector wall time across parallel job sizes, plus a manual CI workflow to run it.

Script

scripts/rector-jobsize-benchmark.php runs cold Rector dry-runs across a list of job sizes and prints a markdown table of wall time, slowdown vs fastest, exit code, and file counts.

CI workflow

.github/workflows/jobsize_benchmark.yaml runs on workflow_dispatch only (no per-PR cost). Sizes default to 50 through 300 by 15 and are overridable from the run dialog. Results go to the job summary and an uploaded artifact.

Local sweep (24 cores, 20-400 by 10)

Fastest around job size 60-130 (~43-46 s flat); above ~250 it climbs to ~1.8-1.9x slower as large chunks starve cores. All runs analysed the same 2620 files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant