Skip to content

Conversation

RodrigoVillar
Copy link
Contributor

@RodrigoVillar RodrigoVillar commented Sep 30, 2025

Why this should be merged

As mentioned in #4282, it would be great if we could have a more precise assessment for the re-execution test rather than printing the average mGas/s for the entire benchmark. The starting point point for increasing the precision of the re-execution test would be to record the time spent in block parsing/verification/acceptance (whose sum should equal the total re-execution benchmark time).

How this works

  • Adds metervm metrics to re-execution test
  • Adds the metric unit ms/gGas to allow for a more straightforward comparison between metrics.

How this was tested

CI + ran re-execution test locally to verify that the sum of block parsing/verification/acceptance is just about equal to the total re-execution benchmark time.

Need to be documented in RELEASES.md?

No

@RodrigoVillar RodrigoVillar changed the title Rodrigo/expand reexecution metrics feat(reexecution/c): add metervm metrics Sep 30, 2025
@RodrigoVillar RodrigoVillar marked this pull request as ready for review September 30, 2025 15:39
@Copilot Copilot AI review requested due to automatic review settings September 30, 2025 15:39
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Adds metervm metrics to the re-execution test to provide more precise performance assessment by tracking time spent in block parsing/verification/acceptance. Changes the metric unit from mGas/s to ms/gGas for better metric comparison.

  • Integrates metervm to track block processing phases
  • Changes metric reporting from throughput to time-per-unit format
  • Moves metrics handling to a dedicated file for better organization

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
tests/reexecute/c/vm_reexecute_test.go Adds metervm integration and removes old metrics functions
tests/reexecute/c/metrics.go New file containing metrics collection and reporting logic

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@aaronbuchwald
Copy link
Collaborator

Can we use mgas/s and ggas/s rather than camel case? That's how I've typically seen it and follows the current use of mgas/s.

@aaronbuchwald
Copy link
Collaborator

Note: need to ensure that the newly added metrics show up as desired in the benchmarks page.

@aaronbuchwald aaronbuchwald added this pull request to the merge queue Oct 1, 2025
Merged via the queue into master with commit 613219c Oct 1, 2025
35 checks passed
@aaronbuchwald aaronbuchwald deleted the rodrigo/expand-reexecution-metrics branch October 1, 2025 16:01
@github-project-automation github-project-automation bot moved this to Done 🎉 in avalanchego Oct 1, 2025
RodrigoVillar added a commit that referenced this pull request Oct 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants