Snoop: simpler registration in proto_alpha/lib_benchmark_proto

Context

Define a simpler registration function to run snoop benchmarks. Currently in proto_alpha/lib_benchmark_proto benchmarks use Registration_helpers.register to register a benchmark. it could be simplified even further:

  • instead of every benchmark defining create_benchmarks and create_benchmark separately, we move create_benchmarks function into register_simple body.
  • we introduce stable naming convention where the first tag + Benchmark basename are used as MODEL_NAME, and create the models list inside the function body(again, instead of doing it in every benchmark by hand)
  • We introduce ?generated_code_file param to optionally generate code when parameter is provided.However, actually generating the code is a todo for now.

To recap, if the interface is okay, and changes are adequate we can update all other benchmarks in this folder and move along to also simplify model declarations along with introducing automatically enforced naming for model parameters.

Manually testing the MR

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Pavlo Khrystenko

Merge request reports

Loading