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

Autoperf #358

Merged
merged 8 commits into from
Nov 7, 2023
Merged

Autoperf #358

merged 8 commits into from
Nov 7, 2023

Commits on Oct 26, 2023

  1. docs(tut/dev/linux): change include to code-block

    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl committed Oct 26, 2023
    Configuration menu
    Copy the full SHA
    9513940 View commit details
    Browse the repository at this point in the history
  2. docs(tut/dev/linux): add note on pytest

    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl committed Oct 26, 2023
    Configuration menu
    Copy the full SHA
    ef307fb View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2023

  1. docs(tut/dev/linux): add tools used for perf. eval.

    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    Co-authored-by: Karl Bonde Torp <karlowich@gmail.com>
    safl and karlowich committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    3f5be80 View commit details
    Browse the repository at this point in the history
  2. feat(cijoe/scripts): add script building kernel deb-pkg

    This is inherited from "cijoe-pkg-linux", and extended with options
    utilized for interface efficiency evaluation, as done in the fio
    repository at "t/one-core-peak.sh".
    
    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    516a1dc View commit details
    Browse the repository at this point in the history
  3. feat(cijoe): add configs, scripts and workflows for perf. eval.

    * configs/bench-*.toml
    
      - These configurations are equivalent
      - They introduce a new section "duts", "duts" have the information
        needed to produce bdev-configs
      - The configurations specifically describe the machines utilized for
        automating the performance evaluation, this will be covered by
        documentation on the xNVMe CI environment
    
    * scripts/spdk_bdev_confs_generator.py
    
      - Emits bdev-configurations on the target-system
      - It utilizes the list of [['duts']] aka "device-under-test"
    
    * scripts/bdevperf.py
    
      - Wraps the execution of the SPDK benchmark tool bdevperf
      - Names output-files by a convention utilized by the
        'bench_plotter.py'
    
    * scripts/bench_plotter.py
    
      - Produce plots from the output of 'bdevperf.py'
      - Auxiliary files 'auxiliary/plot-*.yaml', these define limits,
        legends on data-sets etc.
    
    * scripts/bench_reporter.py
    
      - Produce a .pdf report using the graphs produced by bench_plotter.py
      - templates/perf_report
        - This is a report template
        - The files are specific to the tool rst2pdf
    
    * {fio,liburing,spdk}_build.py
    
      - Scripts to build and install fio, liburing, and SPDK from source
    
    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    Co-authored-by: Karl Bonde Torp <karlowich@gmail.com>
    
    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    b614033 View commit details
    Browse the repository at this point in the history
  4. refactor(ci): add descriptive labels for self-hosted 'runs-on'

    Currently, the 'runs-on' label just uses 'self-hosted', since we only
    utilize a single "type" of self-hosted runner. However, with the
    introduction of self-hosted runners for perf. eval, then they need to be
    distinguishable. This is done by adding descriptive labels 'verify'.
    
    Also, renaming the job from 'build-and-test' to 'verify'.
    
    Thus, this change, to ensure that the jobs currently using self-hosted
    runners, won't start using the perf-runners.
    
    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    a1ac6b7 View commit details
    Browse the repository at this point in the history
  5. feat(ci): add job named 'bench' for perf. eval.

    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    166f4ca View commit details
    Browse the repository at this point in the history
  6. docs(ci): add section describing the CI env.

    This gives an overview of the xNVMe CI environment, that is the jobs
    that it performs and the resoucres it utilizes to do so.
    
    This documentation is not complete, however, it is vastly better than
    having no documentation, which is what we came from.
    
    The file named "xnvme-ci-overview.drawio.png" is a png-file with the
    diagram embedded inside. This means, that you can view it as a png-file,
    however you can also edit it draw.io / Diagrams.net
    
    Co-authored-by: Karl Bonde Torp <karlowich@gmail.com>
    Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
    safl and karlowich committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    28522d4 View commit details
    Browse the repository at this point in the history