Skip to content

Trigger runtime benchmarks for released tags - #2364

Closed
zhouguangyuan0718 wants to merge 1 commit into
xgo-dev:mainfrom
zhouguangyuan0718:codex/notify-runtime-benchmark-on-release
Closed

Trigger runtime benchmarks for released tags#2364
zhouguangyuan0718 wants to merge 1 commit into
xgo-dev:mainfrom
zhouguangyuan0718:codex/notify-runtime-benchmark-on-release

Conversation

@zhouguangyuan0718

Copy link
Copy Markdown
Contributor

Depends on xgo-dev/benchmarks#23 landing first.

After the tag-only release job publishes artifacts successfully, this adds a separate notification job that dispatches llgo-tag-released to xgo-dev/benchmarks with:

  • the source/repository identity;
  • the exact released tag;
  • the exact commit;
  • the source workflow URL.

It reuses the existing BENCHMARKS_REPOSITORY variable and BENCHMARKS_DISPATCH_TOKEN secret contract. Ordinary main pushes continue to use the existing binary-size notification and do not trigger runtime benchmarks.

Validation: workflow YAML parsed successfully and git diff --check passed.

@github-actions

Copy link
Copy Markdown

LLGo baseline benchmarks

dc57dd01cbf9 | workflow run | long-term charts

Program measurements

Platform Workload File size vs base Build vs base Run vs base
Linux cprintf 19288 B 0 B / +0.0% 337.867 ms -1.967 ms / -0.6% (better) 1.288 ms -4.609 us / -0.4% (better)
Linux fmtprintf 1859320 B 0 B / +0.0% 2.670 s -51.03 ms / -1.9% (better) 3.236 ms -119.7 us / -3.6% (better)
Linux println 68776 B 0 B / +0.0% 335.143 ms -8.449 ms / -2.5% (better) 1.598 ms -12.92 us / -0.8% (better)
macOS cprintf 84672 B 0 B / +0.0% 354.930 ms -12.44 ms / -3.4% (better) 2.729 ms -94.67 us / -3.4% (better)
macOS fmtprintf 1892448 B 0 B / +0.0% 2.286 s -318.4 ms / -12.2% (better) 10.998 ms -2.038 ms / -15.6% (better)
macOS println 121360 B 0 B / +0.0% 339.865 ms -4.13 ms / -1.2% (better) 3.489 ms +193.6 us / +5.9% (worse)
Core language and compiler benchmarks
Platform Benchmark ns/op vs base
Linux BenchmarkLookupPCRandom 13.350 ns/op +0.08 ns/op / +0.6% (worse)
Linux BenchmarkMergeCompilerFlags 150.400 ns/op -0.9 ns/op / -0.6% (better)
Linux BenchmarkMergeLinkerFlags 94.250 ns/op -0.58 ns/op / -0.6% (better)
Linux BenchmarkChannelBuffered 34 ns/op +0.01 ns/op / +0.02942% (worse)
Linux BenchmarkChannelHandoff 29503 ns/op +756 ns/op / +2.6% (worse)
Linux BenchmarkDefer 47.300 ns/op -0.4 ns/op / -0.8% (better)
Linux BenchmarkDirectCall 1.566 ns/op +0.007 ns/op / +0.4% (worse)
Linux BenchmarkGlobalRead 1.557 ns/op 0 ns/op / +0.0%
Linux BenchmarkGlobalWrite 2.481 ns/op 0 ns/op / +0.0%
Linux BenchmarkGoroutine 44768 ns/op +653 ns/op / +1.5% (worse)
Linux BenchmarkInterfaceCall 8.144 ns/op +0.039 ns/op / +0.5% (worse)
Linux BenchmarkRuntimeGetG 2.182 ns/op 0 ns/op / +0.0%
macOS BenchmarkLookupPCRandom 11.520 ns/op -0.46 ns/op / -3.8% (better)
macOS BenchmarkMergeCompilerFlags 108 ns/op -13.5 ns/op / -11.1% (better)
macOS BenchmarkMergeLinkerFlags 68.070 ns/op -3.24 ns/op / -4.5% (better)
macOS BenchmarkChannelBuffered 22.160 ns/op -3.42 ns/op / -13.4% (better)
macOS BenchmarkChannelHandoff 7040 ns/op +791 ns/op / +12.7% (worse)
macOS BenchmarkDefer 29.180 ns/op -6.43 ns/op / -18.1% (better)
macOS BenchmarkDirectCall 1.021 ns/op +0.001 ns/op / +0.1% (worse)
macOS BenchmarkGlobalRead 1.033 ns/op -0.113 ns/op / -9.9% (better)
macOS BenchmarkGlobalWrite 1.017 ns/op -0.042 ns/op / -4.0% (better)
macOS BenchmarkGoroutine 31100 ns/op +3790 ns/op / +13.9% (worse)
macOS BenchmarkInterfaceCall 4.446 ns/op -0.436 ns/op / -8.9% (better)
macOS BenchmarkRuntimeGetG 2.387 ns/op -0.197 ns/op / -7.6% (better)

Compared with cf91afb98fca measured in the same runner job.

@codecov

codecov Bot commented Aug 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@zhouguangyuan0718

Copy link
Copy Markdown
Contributor Author

Superseded by #2366, which sends the same llgo-tag-released event from the shared benchmark notification workflow so both runtime performance and open-source compatibility runs are covered.

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