Skip to content

ci-benchmark yaml file created #4625

Open
anishg-bit wants to merge 1 commit intogin-gonic:masterfrom
monkci-testing:branch1
Open

ci-benchmark yaml file created #4625
anishg-bit wants to merge 1 commit intogin-gonic:masterfrom
monkci-testing:branch1

Conversation

@anishg-bit
Copy link
Copy Markdown

Summary

Add a CI benchmark workflow (ci-benchmark.yml) that runs Go benchmarks in parallel across multiple runner types and compares their performance results.

Changes

  • Added .github/workflows/ci-benchmark.yml

What this does

Runner Matrix

Benchmarks run in parallel on three runners simultaneously:

Runner Type
ubuntu-latest GitHub standard hosted runner
monkci-runners-4vcpu MonkCI 4 vCPU runner
monkci-ubuntu-24.04-4-3600iops MonkCI Ubuntu 24.04, 4 vCPU, 3600 IOPS runner

Jobs

benchmark — runs on each runner in the matrix:

  • Checks out the repo
  • Sets up the latest stable Go version
  • Executes go test -bench=. -benchmem -benchtime=3s ./... across all packages
  • Uploads results as a named artifact per runner

compare — runs after all benchmark jobs complete:

  • Downloads all benchmark artifacts
  • Prints a consolidated side-by-side summary of results

Triggers

Event Condition
push On commits to master
pull_request Targeting master
workflow_dispatch Manual trigger from GitHub UI

Test Plan

  • Trigger workflow manually via workflow_dispatch and confirm all three matrix jobs start
  • Verify each runner produces benchmark output
  • Confirm compare job downloads and displays results from all three runners
  • Check artifacts are uploaded under benchmark-results-<runner-name>

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 8, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.37%. Comparing base (3dc1cd6) to head (10554c6).
⚠️ Report is 275 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4625      +/-   ##
==========================================
- Coverage   99.21%   98.37%   -0.84%     
==========================================
  Files          42       48       +6     
  Lines        3182     3138      -44     
==========================================
- Hits         3157     3087      -70     
- Misses         17       42      +25     
- Partials        8        9       +1     
Flag Coverage Δ
?
--ldflags="-checklinkname=0" -tags sonic 98.36% <ø> (?)
-tags go_json 98.29% <ø> (?)
-tags nomsgpack 98.35% <ø> (?)
go-1.18 ?
go-1.19 ?
go-1.20 ?
go-1.21 ?
go-1.25 98.37% <ø> (?)
go-1.26 98.37% <ø> (?)
macos-latest 98.37% <ø> (-0.84%) ⬇️
ubuntu-latest 98.37% <ø> (-0.84%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant