perftool-incubator / crucible

A performance testing and analysis automation framework
Apache License 2.0
12 stars 7 forks source link

Multibench-SingleJSON support #305

Closed rafaelfolco closed 11 months ago

rafaelfolco commented 1 year ago

IN PROGRESS

DONE

TO-DO: ???

Initial design

https://github.com/perftool-incubator/rickshaw/pull/393

  1 {
  2     "bench-ids": { ------------------> CHANGE 4: add bench-ids block
  3         "oslat": "1-2",
  4         "uperf": "3-4,6-7",
  5         "iperf": "5"
  6     },
  7     "mv-params": [ ----------------> CHANGE 3: array of mv-params
  8         {
  9             "benchmark": "oslat",   ----------> CHANGE 5: Identify benchmark mv-params (allow out of order mv-params)
 10             "sets": [
 11                 {
 12                     "params": [
 13                         { "arg": "duration", "vals": [ "10" ], "role": "client" },
 14                         { "arg": "rtprio", "vals": [ "1" ], "role": "client" }
 15                     ]
 16                 }
 17             ]
 18         },
 19         {
 20             "sets": [
 21                 {
 22                     "params": [
 23                         { "arg": "ifname", "vals": ["eth0"], "role": "server" },
 24                         { "arg": "ipv", "vals": ["6"], "role": "all" },
 25                         { "arg": "protocol", "vals": ["udp"], "id": "21" },
 26                         { "arg": "bitrate", "vals": ["200M"], "id": "21" },
 27                         { "arg": "length", "vals": ["256"], "id": "21" }
 28                     ]
 29                 }
 30             ]
 31         }
 32     ],
 33     "tool-params": [
 34         {
 35             "tool": "procstat"
 36         }
 37     ],
 38     "tags": {
 39         "run": "multibench-runfile"
 40     },
 41     "endpoint": [
 42         {
 43             "type": "k8s",
 44             "controller-ip": "CONTROLLER_IP",
 45             "host": "CI_ENDPOINT_HOST",
 46             "user": "CI_ENDPOINT_USER",
 47             "userenv": "alma8",
 48             "unique-project": 1,
 49             "kubeconfig": 0,
 50             "server": 1-2, -------> CHANGE 2a: Allow range of ids
 51             "client": 1-2, --------> CHANGE 2b: Allow range of ids
 52             "config": [
 53                 {
 54                     "targets": [
 55                         { "role": "client", "ids": "1-2" } --------------> CHANGE 1: Allow range of ids
rafaelfolco commented 1 year ago

https://github.com/perftool-incubator/rickshaw/pull/393

rafaelfolco commented 11 months ago

This is implemented. Corner cases to be addressed in a separated issue.