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

Profile hardware counters #85

Closed
wants to merge 40 commits into from

Commits on Jan 22, 2021

  1. skeleton of perf_bench_test

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    d149b52 View commit details
    Browse the repository at this point in the history
  2. add TestBenchRequestPerSecond to bench

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    4340ba6 View commit details
    Browse the repository at this point in the history
  3. Minor fix bench

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    e44e762 View commit details
    Browse the repository at this point in the history
  4. Parallel boot VMs and minor fix bench TestBenchRequestPerSecond

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    027f656 View commit details
    Browse the repository at this point in the history
  5. change boot VMs back to sequential due to data race.

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    689e1a3 View commit details
    Browse the repository at this point in the history
  6. Add perf script that measures RPS benchmark

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    950a653 View commit details
    Browse the repository at this point in the history
  7. remove flags from go test command

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    e52959b View commit details
    Browse the repository at this point in the history
  8. update go.mod and go.sum

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    e6a5e10 View commit details
    Browse the repository at this point in the history
  9. rebase perf_bench_test to master

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    d9907c0 View commit details
    Browse the repository at this point in the history
  10. reproduce bash results by perf_profile

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    c24dfc1 View commit details
    Browse the repository at this point in the history
  11. Implement the skeleton of perf stat in golang and benchmark for multiVMs

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    f9c6a97 View commit details
    Browse the repository at this point in the history
  12. remove redundant command from Makefile

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    3ffef26 View commit details
    Browse the repository at this point in the history
  13. Refactor gperf.go, perf_profile.go and perf_bench_test.go

    1. move VM number iteration from a test function to perf_profile.go
    2. rewrite perf stop method
    3. implement saving results in csv file and plotting charts
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    af7d683 View commit details
    Browse the repository at this point in the history
  14. minor fix of log level

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    a9fbf1c View commit details
    Browse the repository at this point in the history
  15. Restruct UI design and refactor perf_profile.go

    1. Move main function from perf_profile.go to perf_bench_test.go and plot function to plotter.go
    2. Minor fix of perf implementation
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    9d4c4b3 View commit details
    Browse the repository at this point in the history
  16. Fix perf implementation and add tests for perf.go and plotter.go

    User can choose profile duration and time interval, the script will omitting warmup and teardown periods and report the averages of left stats.
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    05a77e3 View commit details
    Browse the repository at this point in the history
  17. Set suitable images and corresponding RPS that stress CPU. Minor fix …

    …perf_bench_test.go and perf.go
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    d13b315 View commit details
    Browse the repository at this point in the history
  18. refactor main loop of perf_bench_test.go and let SetWarmTime do only …

    …once
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    cfcc197 View commit details
    Browse the repository at this point in the history
  19. delete profile bash script

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    6e27dd5 View commit details
    Browse the repository at this point in the history
  20. add unit test for running perf

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    b949049 View commit details
    Browse the repository at this point in the history
  21. change image names to vhiveease/

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    1f97d02 View commit details
    Browse the repository at this point in the history
  22. add testing of the profile module to github actions

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    
    minor fix git actions' naming and response validation check
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    56b9cc7 View commit details
    Browse the repository at this point in the history
  23. remove created folders of TestBenchRequestPerSecond

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    3be6fd2 View commit details
    Browse the repository at this point in the history
  24. minor fix calculation error and typo of variable names

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    756a756 View commit details
    Browse the repository at this point in the history
  25. minor fix conflict between filepath and filename format

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    40ec77b View commit details
    Browse the repository at this point in the history
  26. remove shut down VMs and only boot VMs when necessary

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    d623088 View commit details
    Browse the repository at this point in the history
  27. minor fix to test replacement of characters

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    
    minor fix test expected value
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    e2f174a View commit details
    Browse the repository at this point in the history
  28. change parameters of CSVPlotter to only accept file path and input fi…

    …le name
    
    the output images will be stored under the file path, with input file.
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    51b8a4a View commit details
    Browse the repository at this point in the history
  29. split a function into logic pieces and another function uses these pi…

    …eces to achieve different logic flow
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    bed2c69 View commit details
    Browse the repository at this point in the history
  30. Feature perf metrics: perf can automatically calculate metrics and pl…

    …ot corresponding charts
    
    note: compatible with Intel Broadwell
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    fae9877 View commit details
    Browse the repository at this point in the history
  31. split NewPerfStat and readPerfData into function units

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    8e57591 View commit details
    Browse the repository at this point in the history
  32. fix naming, descriptions and commits of running arguments and injecti…

    …on function
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    a478426 View commit details
    Browse the repository at this point in the history
  33. merge profile test into unit test

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    3503253 View commit details
    Browse the repository at this point in the history
  34. change Y-axis to start from zero

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    e519565 View commit details
    Browse the repository at this point in the history
  35. move metrics to PMU events map to JSON file, refactor parameters of c…

    …alculation functions
    
    add more metrics
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    b03905a View commit details
    Browse the repository at this point in the history

Commits on Feb 4, 2021

  1. refactor perf profiler: split metrics into files and save interim res…

    …ults
    
    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Feb 4, 2021
    Configuration menu
    Copy the full SHA
    cb05a22 View commit details
    Browse the repository at this point in the history
  2. fix bug of incorrect step size on x-axis

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Feb 4, 2021
    Configuration menu
    Copy the full SHA
    aa19be8 View commit details
    Browse the repository at this point in the history
  3. store metric to events map in json file

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Feb 4, 2021
    Configuration menu
    Copy the full SHA
    c22b562 View commit details
    Browse the repository at this point in the history
  4. fix RPS calculation error, change profiler from perf to a PMU tool

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Feb 4, 2021
    Configuration menu
    Copy the full SHA
    fbb4bc0 View commit details
    Browse the repository at this point in the history
  5. integrate PMU tool to benchmark

    Signed-off-by: NiuJ1ao <26167136+NiuJ1ao@users.noreply.github.com>
    NiuJ1ao committed Feb 4, 2021
    Configuration menu
    Copy the full SHA
    cfde8bb View commit details
    Browse the repository at this point in the history