Skip to content

bench: elixir_bench runs Benchee and erlang_bench runs erlperf (closes #9588) - #9704

Merged
TrapsterDK merged 2 commits into
mainfrom
bench-beam-9588
Nov 9, 2026
Merged

TrapsterDK merged 2 commits into
mainfrom
bench-beam-9588

Conversation

@TrapsterDK

Copy link
Copy Markdown
Collaborator

Closes #9588

  • elixir_bench (//elixir/rules:defs.bzl): an elixir_test tagged dx-bench and manual. DxBench.run/2 runs Benchee 1.5.1 (mix.lock pinned in elixir/bench/mix.lock, fetched through the existing elixir.mix hub as @dx_benchee) and writes dx-bench.json in ns.
  • erlang_bench (//erlang/rules:defs.bzl): a ct_suite tagged dx-bench and manual. dx_bench:run/1,2 runs erlperf 2.3.0 and argparse 2.0.0 (Hex tarballs pinned by digest in erlang/toolchain/pins.bzl) and writes dx-bench.json in ops/s.
  • No fuzz macros: no coverage-guided fuzzer exists for the BEAM. Stated in both READMEs.
  • Names follow the merged *_bench shape (python_bench, java_bench), not *_benchmark from the issue text. Elixir and Erlang have no <name>_bin because the test rule is the runnable.
  • Fixtures: families/beam/{elixir,erlang}/tests/fixtures/bench. Docs: both BEAM READMEs and docs/cli/commands/bench.md.

Tests: ran copies of both fixtures as root packages on Linux with Bazel; both pass and write a valid dx-bench.json. wrapper_contract_tests and the toolchain metadata tests pass. The family module itself does not analyze locally on main (rules_rust_prost is not visible from rules_dx as a non-root module), so the fixtures in families/beam were not run in place. No nested-Bazel or consumer tests were run. docs/support-matrix.md is generated per rule kind and does not list bench macros, so it is unchanged. No CI dispatch: nothing here is platform-specific.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Xut2hwESun1HL2eSVd1d5B

@TrapsterDK
TrapsterDK merged commit a0d5633 into main Nov 9, 2026
1 check failed
@TrapsterDK
TrapsterDK deleted the bench-beam-9588 branch November 9, 2026 10:59
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.

bench/fuzz: BEAM languages (elixir, erlang)

1 participant