Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Geekbench6 benchmark #5238

Open
jellyfishcake opened this issue Oct 4, 2024 · 0 comments
Open

Add Geekbench6 benchmark #5238

jellyfishcake opened this issue Oct 4, 2024 · 0 comments
Labels
good first issue This is a good issue for someone new to PKB

Comments

@jellyfishcake
Copy link
Contributor

jellyfishcake commented Oct 4, 2024

https://www.geekbench.com/

This task adds Geekbench 6 as a new benchmark for PKB. It can be divided into a few different components:

  1. Add the benchmarking framework
  • create geekbench_benchmark.py file in linux_benchmarks
  • create geekbench_benchmark.py in windows benchmarks
  • populate BENCHMARK_NAME and BENCHMARK_CONFIG constants so that the benchmark can be found by PKB
  • create GetConfig, Prepare, Run and Cleanup functions handlers with pass/return [] as function content.
    At this point you can run your new benchmark in PKB (though it will not do anything yet).
  1. Install Geekbench
  • Download the geekbench installer (use the OS that you will prefer to add to PKB) and try installing on your machine.
  • Create a new package called geekbench.py in linux_packages/windows_packages.
  • create a new function, Install, that takes a vm as an input and installs geekbench on that vm. You should be able to wrap shell commands as vm.RemoteCommand
  • Install for windows and ubuntu2404 are top priority, other linux OSes are nice to have.
  • add unit tests to make sure the remote commands are issued using mock to mock the vm
  1. Run Geekbench
  • Download and run Geekbench locally, you don't need to use PKB to run Geekbench. This part is about parsing the output from Geekbench into some sensible format.
  • Store the Geekbench output as a file in the data directory under data/geekbench. This file will be your raw data for parsing and parsing unit tests.
  • Add a function in geekbench.py that you added to linux_packages/windows_packages with a sensible name, e.g. ParseResults
  • Parse results should take a str as input and produce a list of PKB Samples as output. You goal is to parse the output into useful samples, where each sample as a metric name, metric value, metric unit, metric metadata. Each row of Geekbench's output should be a separate metric.
  • Test the parser function
@jellyfishcake jellyfishcake added the good first issue This is a good issue for someone new to PKB label Oct 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue This is a good issue for someone new to PKB
Projects
None yet
Development

No branches or pull requests

1 participant