-
  type: "environment"

  paths:
    # Top level directories:
    ## Working directory
    DIR[WORKING]: "_tmp"
    ## Build directories
    DIR[BUILD,HTML]: "_build"
    DIR[BUILD,LATEX]: "_build_latex"

    # Static .rst files
    DIR[RST]: "../../../docs/report"

    # Working directories
    ## Input data files (.zip, .xml)
    DIR[WORKING,DATA]: "{DIR[WORKING]}/data"
    ## Static source files from git
    DIR[WORKING,SRC]: "{DIR[WORKING]}/src"
    DIR[WORKING,SRC,STATIC]: "{DIR[WORKING,SRC]}/_static"

    # Static html content
    DIR[STATIC]: "{DIR[BUILD,HTML]}/_static"
    DIR[STATIC,VPP]: "{DIR[STATIC]}/vpp"
    DIR[STATIC,DPDK]: "{DIR[STATIC]}/dpdk"
    DIR[STATIC,ARCH]: "{DIR[STATIC]}/archive"

    # Detailed test results
    DIR[DTR]: "{DIR[WORKING,SRC]}/detailed_test_results"
    DIR[DTR,PERF,DPDK]: "{DIR[DTR]}/dpdk_performance_results"
    DIR[DTR,PERF,VPP]: "{DIR[DTR]}/vpp_performance_results"
    DIR[DTR,MRR,VPP]: "{DIR[DTR]}/vpp_mrr_results"
    DIR[DTR,PERF,COT]: "{DIR[DTR]}/cot_performance_results"
    DIR[DTR,PERF,HC]: "{DIR[DTR]}/honeycomb_performance_results"
    DIR[DTR,FUNC,VPP]: "{DIR[DTR]}/vpp_functional_results"
    DIR[DTR,FUNC,VPP,CENTOS]: "{DIR[DTR]}/vpp_functional_results_centos"
    DIR[DTR,FUNC,HC]: "{DIR[DTR]}/honeycomb_functional_results"
    DIR[DTR,FUNC,NSHSFC]: "{DIR[DTR]}/nshsfc_functional_results"
    DIR[DTR,PERF,VPP,IMPRV]: "{DIR[WORKING,SRC]}/vpp_performance_tests/performance_improvements"

    # Detailed test configurations
    DIR[DTC]: "{DIR[WORKING,SRC]}/test_configuration"
    DIR[DTC,PERF,VPP]: "{DIR[DTC]}/vpp_performance_configuration"
    DIR[DTC,MRR,VPP]: "{DIR[DTC]}/vpp_mrr_configuration"
    DIR[DTC,FUNC,VPP]: "{DIR[DTC]}/vpp_functional_configuration"
    DIR[DTC,FUNC,VPP,CENTOS]: "{DIR[DTC]}/vpp_functional_configuration_centos"

    # Detailed tests operational data
    DIR[DTO]: "{DIR[WORKING,SRC]}/test_operational_data"
    DIR[DTO,PERF,VPP]: "{DIR[DTO]}/vpp_performance_operational_data"

    # .css patch file to fix tables generated by Sphinx
    DIR[CSS_PATCH_FILE]: "{DIR[STATIC]}/theme_overrides.css"
    DIR[CSS_PATCH_FILE2]: "{DIR[WORKING,SRC,STATIC]}/theme_overrides.css"

  urls:
    URL[JENKINS,CSIT]: "https://jenkins.fd.io/view/csit/job"
    URL[JENKINS,HC]: "https://jenkins.fd.io/view/hc2vpp/job"
    URL[NEXUS]: "https://docs.fd.io/csit"
    DIR[NEXUS]: "report/_static/archive"

  make-dirs:
  # List the directories which are created while preparing the environment.
  # All directories MUST be defined in "paths" section.
  - "DIR[WORKING,DATA]"
  - "DIR[STATIC,VPP]"
  - "DIR[STATIC,DPDK]"
  - "DIR[STATIC,ARCH]"
  - "DIR[BUILD,LATEX]"
  - "DIR[WORKING,SRC]"
  - "DIR[WORKING,SRC,STATIC]"

  remove-dirs:
  # List the directories which are deleted while cleaning the environment.
  # All directories MUST be defined in "paths" section.
  #- "DIR[BUILD,HTML]"
  - "DIR[WORKING,DATA]"

  build-dirs:
  # List the directories where the results (build) is stored.
  # All directories MUST be defined in "paths" section.
  - "DIR[BUILD,HTML]"
  - "DIR[BUILD,LATEX]"

-
  type: "configuration"
  data-sets:
    plot-vpp-http-server-performance:
      csit-vpp-perf-1804-all:
      - 39  # wrk
      - 40  # wrk
      - 41  # wrk
      - 42  # wrk
      - 43  # wrk
      - 44  # wrk
      - 45  # wrk
      - 46  # wrk
      - 47  # wrk
      - 48  # wrk
# TODO: Add the data sources
#    vpp-meltdown-impact:
#      csit-vpp-perf-1707-all:
#      - 9
#      - 10
#      - 13
#      csit-vpp-perf-1710-all:
#      - 11l
#      - 12
#      - 13
# TODO: Add the data sources
#    vpp-spectre-impact:
#      csit-vpp-perf-1707-all:
#      - 9
#      - 10
#      - 13
#      csit-vpp-perf-1710-all:
#      - 11
#      - 12
#      - 13
    vpp-performance-changes:
      csit-vpp-perf-1710-all:
      - 11
      - 12
      - 13
      - 14
      - 15
      - 16
      - 17
      - 18
      - 19
      - 20
      csit-vpp-perf-1801-all:
      - 124  # sel
      - 127  # sel
      - 128  # sel
      - 141  # sel
      - 142  # sel
      - 143  # sel
      - 145  # sel
      - 146  # sel
      - 162  # sel
      - 163  # sel
      - 167  # sel
      - 172  # sel acl only
      csit-vpp-perf-1804-all:
      - 21  # sel
      - 22  # sel
      - 23  # sel
      - 24  # sel
      - 27  # sel
      - 28  # sel
      - 29  # sel
      - 30  # sel
      - 31  # sel
      - 35  # sel
    vpp-performance-changes-mrr:
      csit-vpp-perf-check-1801:
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
      - 11
      - 12
      - 13
      csit-vpp-perf-check-1804:
      - 6   # mrr - sel
      - 13  # mrr - sel
      - 14  # mrr - sel
      - 15  # mrr - sel
      - 16  # mrr - sel
      - 17  # mrr - sel
      - 19  # mrr - sel
      - 20  # mrr - sel
      - 21  # mrr - sel
      - 22  # mrr - sel
    plot-throughput-speedup-analysis:
      csit-vpp-perf-1804-all:
      - 19  # full
      - 20  # full
      - 25  # full
      - 49  # full
      - 21  # sel
      - 22  # sel
      - 23  # sel
      - 24  # sel
      - 27  # sel
      - 28  # sel
      - 29  # sel
      - 30  # sel
      - 31  # sel
      - 35  # sel
    plot-ligato-throughput-speedup-analysis:
      csit-ligato-perf-1804-all:
      - 5   # sel
      - 6   # sel
      - 7   # sel
      - 8   # sel
      - 9   # sel
      - 10  # sel
      - 11  # sel
      - 12  # sel
      - 13  # sel
      - 14  # sel
#    performance-improvements:
#      csit-vpp-perf-1707-all:
#      - 9
#      - 10
#      - 13
#      - 14
#      - 15
#      - 16
#      - 17
#      - 18
#      - 19
#      - 21
#      csit-vpp-perf-1710-all:
#      - 11
#      - 12
#      - 13
#      - 14
#      - 15
#      - 16
#      - 17
#      - 18
#      - 19
#      - 20
#      csit-vpp-perf-1801-all:
#      - 124
#      - 127
#      - 128
#      csit-ligato-perf-1710-all:
#      - 5
#      - 7
#      - 8
#      - 9
#      - 10
#      - 11
#      - 12
#      - 13
#      - 16
#      - 17
#      csit-ligato-perf-1801-all:
#      - 16  # sel
#      - 17  # sel
#      - 18  # sel
#      - 19  # sel
#      - 20  # sel
#      - 21  # sel
#      - 22  # sel
#      - 23  # sel
#      - 24  # sel
    vpp-perf-results:
      csit-vpp-perf-1804-all:
      - 19  # full
      - 20  # full
      - 25  # full
      - 49  # full
    vpp-func-results:
      csit-vpp-functional-1804-ubuntu1604-virl:
      - 229
    vpp-func-results-centos:
      csit-vpp-functional-1804-centos7-virl:
      - 238
    vpp-mrr-results:
      csit-vpp-perf-check-1804:
      - 5   # mrr - full
    ligato-perf-results:
      csit-ligato-perf-1804-all:
      - 4  # full
    dpdk-perf-results:
      csit-dpdk-perf-1804-all:
      - 13
    hc-func-results:
      csit-hc2vpp-verify-func-1804-ubuntu1604:
      - 3
    nsh-func-results:
      csit-nsh_sfc-verify-func-1804-ubuntu1604-virl:
      - 7
    plot-vpp-throughput-latency:
      csit-vpp-perf-1804-all:
      - 19  # full
      - 20  # full
      - 25  # full
      - 49  # full
      - 21  # sel
      - 22  # sel
      - 23  # sel
      - 24  # sel
      - 27  # sel
      - 28  # sel
      - 29  # sel
      - 30  # sel
      - 31  # sel
      - 35  # sel
    plot-dpdk-throughput-latency:
      csit-dpdk-perf-1804-all:
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
      - 10
      - 11
      - 12
      - 13
    plot-ligato-throughput-latency:
      csit-ligato-perf-1804-all:
      - 5   # sel
      - 6   # sel
      - 7   # sel
      - 8   # sel
      - 9   # sel
      - 10  # sel
      - 11  # sel
      - 12  # sel
      - 13  # sel
      - 14  # sel

  plot-layouts:

    plot-cps:
      xaxis:
        autorange: True
        autotick: False
        fixedrange: False
        gridcolor: "rgb(238, 238, 238)"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        tickmode: "linear"
        title: "Indexed Test Cases"
        zeroline: False
      yaxis:
        gridcolor: "rgb(238, 238, 238)'"
        hoverformat: ".4s"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        range: []
        rangemode: "tozero"
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        title: "Connections Per Second [cps]"
        zeroline: False
      boxmode: "group"
      boxgroupgap: 0.5
      autosize: False
      margin:
        t: 50
        b: 20
        l: 50
        r: 20
      showlegend: True
      legend:
        orientation: "h"
      width: 700
      height: 1000

    plot-rps:
      xaxis:
        autorange: True
        autotick: False
        fixedrange: False
        gridcolor: "rgb(238, 238, 238)"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        tickmode: "linear"
        title: "Indexed Test Cases"
        zeroline: False
      yaxis:
        gridcolor: "rgb(238, 238, 238)'"
        hoverformat: ".4s"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        range: []
        rangemode: "tozero"
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        title: "Requests Per Second [rps]"
        zeroline: False
      boxmode: "group"
      boxgroupgap: 0.5
      autosize: False
      margin:
        t: 50
        b: 20
        l: 50
        r: 20
      showlegend: True
      legend:
        orientation: "h"
      width: 700
      height: 1000

    plot-throughput:
      xaxis:
        autorange: True
        autotick: False
        fixedrange: False
        gridcolor: "rgb(238, 238, 238)"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        tickmode: "linear"
        title: "Indexed Test Cases"
        zeroline: False
      yaxis:
        gridcolor: "rgb(238, 238, 238)'"
        hoverformat: ".4s"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        range: []
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        title: "Packets Per Second [pps]"
        zeroline: False
      boxmode: "group"
      boxgroupgap: 0.5
      autosize: False
      margin:
        t: 50
        b: 20
        l: 50
        r: 20
      showlegend: True
      legend:
        orientation: "h"
      width: 700
      height: 1000

    plot-latency:
      xaxis:
        autorange: True
        autotick: False
        fixedrange: False
        gridcolor: "rgb(238, 238, 238)"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        tickmode: "linear"
        title: "Indexed Test Cases"
        zeroline: False
      yaxis:
        gridcolor: "rgb(238, 238, 238)'"
        hoverformat: ""
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        range: []
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        title: "Latency min/avg/max [uSec]"
        zeroline: False
      boxmode: "group"
      boxgroupgap: 0.5
      autosize: False
      margin:
        t: 50
        b: 20
        l: 50
        r: 20
      showlegend: True
      legend:
        orientation: "h"
      width: 700
      height: 1000

    plot-throughput-speedup-analysis:
      xaxis:
        autorange: True
        autotick: False
        fixedrange: False
        gridcolor: "rgb(238, 238, 238)"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        tickmode: "linear"
        tickangle: 270
        zeroline: False
      yaxis:
        title: "Throughput speedup factor"
        gridcolor: "rgb(238, 238, 238)"
        hoverformat: ".4s"
        linecolor: "rgb(238, 238, 238)"
        linewidth: 1
        range: []
        showgrid: True
        showline: True
        showticklabels: True
        tickcolor: "rgb(238, 238, 238)"
        zeroline: False
      legend:
        orientation: "h"
        xanchor: "center"
        yanchor: "top"
        x: 0.5
        y: 1
        bgcolor: "rgba(255, 255, 255, 0)"
        bordercolor: "rgba(255, 255, 255, 0)"
      barmode: "group"
      bargap: 0.15
      bargroupgap: 0.1
      autosize: False
      margin:
          't': 50
          'b': 300
          'l': 50
          'r': 20
      showlegend: True
      width: 700
      height: 1000

-
  type: "static"
  src-path: "{DIR[RST]}"
  dst-path: "{DIR[WORKING,SRC]}"

-
  type: "input"  # Ignored in debug mode
  general:
    file-name: "robot-plugin.zip"
    file-format: ".zip"
    download-path: "{job}/{build}/robot/report/*zip*/{filename}"
    extract: "robot-plugin/output.xml"
  builds:
#    csit-vpp-perf-1707-all:
#    - 9
#    - 10
#    - 13
#    - 14
#    - 15
#    - 16
#    - 17
#    - 18
#    - 19
#    - 21
    csit-vpp-perf-1710-all:
    - 11
    - 12
    - 13
    - 14
    - 15
    - 16
    - 17
    - 18
    - 19
    - 20
    csit-vpp-perf-1801-all:
#    - 122  # full
#    - 126  # full
#    - 129  # full
#    - 140  # full
    - 124  # sel
    - 127  # sel
    - 128  # sel
    - 141  # sel
    - 142  # sel
    - 143  # sel
    - 145  # sel
    - 146  # sel
    - 162  # sel
    - 163  # sel
    - 167  # sel
    - 172  # sel acl only
    csit-vpp-perf-1804-all:
    - 19  # full
    - 20  # full
    - 25  # full
    - 49  # full
    - 21  # sel
    - 22  # sel
    - 23  # sel
    - 24  # sel
    - 27  # sel
    - 28  # sel
    - 29  # sel
    - 30  # sel
    - 31  # sel
    - 35  # sel
    - 39  # wrk
    - 40  # wrk
    - 41  # wrk
    - 42  # wrk
    - 43  # wrk
    - 44  # wrk
    - 45  # wrk
    - 46  # wrk
    - 47  # wrk
    - 48  # wrk
    csit-vpp-perf-check-1801:
    - 3   # mrr
    - 4   # mrr
    - 5   # mrr
    - 6   # mrr
    - 7   # mrr
    - 8   # mrr
    - 9   # mrr
    - 11  # mrr
    - 12  # mrr
    - 13  # mrr
    csit-vpp-perf-check-1804:
    - 5   # mrr - full
    - 6   # mrr - sel
    - 13  # mrr - sel
    - 14  # mrr - sel
    - 15  # mrr - sel
    - 16  # mrr - sel
    - 17  # mrr - sel
    - 19  # mrr - sel
    - 20  # mrr - sel
    - 21  # mrr - sel
    - 22  # mrr - sel
#    csit-ligato-perf-1710-all:
#    - 5
#    - 7
#    - 8
#    - 9
#    - 10
#    - 11
#    - 12
#    - 13
#    - 16
#    - 17
#    csit-ligato-perf-1801-all:
#    - 16  # sel
#    - 17  # sel
#    - 18  # sel
#    - 19  # sel
#    - 20  # sel
#    - 21  # sel
#    - 22  # sel
#    - 23  # sel
#    - 24  # sel
#    - 25  # full
    csit-ligato-perf-1804-all:
    - 4   # full
    - 5   # sel
    - 6   # sel
    - 7   # sel
    - 8   # sel
    - 9   # sel
    - 10  # sel
    - 11  # sel
    - 12  # sel
    - 13  # sel
    - 14  # sel
    csit-dpdk-perf-1804-all:
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    - 10
    - 11
    - 12
    - 13
    csit-vpp-functional-1804-ubuntu1604-virl:
    - 229
    csit-vpp-functional-1804-centos7-virl:
    - 238
    csit-nsh_sfc-verify-func-1804-ubuntu1604-virl:
    - 7
    csit-hc2vpp-verify-func-1804-ubuntu1604:
    - 3

-
  type: "output"
  output: "report"
  format:
    html:
    - full
    pdf:
    - minimal

################################################################################
###                               T A B L E S                                ###
################################################################################

#-
#  type: "table"
#  title: "Performance Impact of Meltdown Patches"
#  algorithm: "table_performance_comparison"
#  output-file-ext: ".csv"
## TODO: specify dir
#  output-file: "{DIR[STATIC,VPP]}/meltdown-impact"
#  reference:
#    title: "No Meltdown"
## TODO: specify data sources
#    data:
#      csit-vpp-perf-1707-all:
#      - 9
#      - 10
#      - 13
#  compare:
#    title: "Meltdown Patches Applied"
## TODO: specify data sources
#    data:
#      csit-vpp-perf-1710-all:
#      - 11
#      - 12
#      - 13
#  data:
#    "vpp-meltdown-impact"
#  filter: "all"
#  parameters:
#  - "name"
#  - "parent"
#  - "throughput"
#  # Number of the best and the worst tests presented in the table. Use 0 (zero)
#  # to present all tests.
#  nr-of-tests-shown: 20
#
#-
#  type: "table"
#  title: "Performance Impact of Spectre Patches"
#  algorithm: "table_performance_comparison"
#  output-file-ext: ".csv"
## TODO: specify dir
#  output-file: "{DIR[STATIC,VPP]}/meltdown-spectre-impact"
#  reference:
#    title: "No Spectre"
## TODO: specify data sources
#    data:
#      csit-vpp-perf-1707-all:
#      - 9
#      - 10
#      - 13
#  compare:
#    title: "Spectre Patches Applied"
## TODO: specify data sources
#    data:
#      csit-vpp-perf-1710-all:
#      - 11
#      - 12
#      - 13
#  data:
#    "vpp-spectre-impact"
#  filter: "all"
#  parameters:
#  - "name"
#  - "parent"
#  - "throughput"
#  # Number of the best and the worst tests presented in the table. Use 0 (zero)
#  # to present all tests.
#  nr-of-tests-shown: 20

-
  type: "table"
  title: "VPP Performance Changes"
  algorithm: "table_performance_comparison"
  output-file-ext: ".csv"
  output-file: "{DIR[STATIC,VPP]}/performance-changes"
  history:
    -
      title: "rls1710"
      data:
        csit-vpp-perf-1710-all:
        - 11
        - 12
        - 13
        - 14
        - 15
        - 16
        - 17
        - 18
        - 19
        - 20
  reference:
    title: "rls1801"
    data:
      csit-vpp-perf-1801-all:
      - 124  # sel
      - 127  # sel
      - 128  # sel
      - 141  # sel
      - 142  # sel
      - 143  # sel
      - 145  # sel
      - 146  # sel
      - 162  # sel
      - 163  # sel
      - 167  # sel
      - 172  # sel acl only
  compare:
    title: "rls1804"
    data:
      csit-vpp-perf-1804-all:
      - 21  # sel
      - 22  # sel
      - 23  # sel
      - 24  # sel
      - 27  # sel
      - 28  # sel
      - 29  # sel
      - 30  # sel
      - 31  # sel
      - 35  # sel
  data: "vpp-performance-changes"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "throughput"
  # Number of the best and the worst tests presented in the table. Use 0 (zero)
  # to present all tests.
  nr-of-tests-shown: 20
  outlier-const: 1.5

-
  type: "table"
  title: "VPP Performance Changes - MRR"
  algorithm: "table_performance_comparison_mrr"
  output-file-ext: ".csv"
  output-file: "{DIR[STATIC,VPP]}/performance-changes-mrr"
  reference:
    title: "Release 1801"
    data:
      csit-vpp-perf-check-1801:
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
      - 11
      - 12
      - 13
  compare:
    title: "Release 1804"
    data:
      csit-vpp-perf-check-1804:
      - 6   # mrr - sel
      - 13  # mrr - sel
      - 14  # mrr - sel
      - 15  # mrr - sel
      - 16  # mrr - sel
      - 17  # mrr - sel
      - 19  # mrr - sel
      - 20  # mrr - sel
      - 21  # mrr - sel
      - 22  # mrr - sel
  data: "vpp-performance-changes-mrr"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "result"
  # Number of the best and the worst tests presented in the table. Use 0 (zero)
  # to present all tests.
  nr-of-tests-shown: 20
  outlier-const: 1.5

#-
#  type: "table"
#  title: "Performance improvements"
#  algorithm: "table_performance_improvements"
#  template: "{DIR[DTR,PERF,VPP,IMPRV]}/tmpl_performance_improvements.csv"
#  output-file-ext: ".csv"
#  output-file: "{DIR[DTR,PERF,VPP,IMPRV]}/performance_improvements"
#  columns:
#  -
#    title: "Test Name"
#    data: "template 1"
#  -
#    title: "16.09 mean [Mpps]"
#    data: "template 2"
#  -
#    title: "17.01 mean [Mpps]"
#    data: "template 3"
#  -
#    title: "17.04 mean [Mpps]"
#    data: "template 4"
#  -
#    title: "17.07 mean [Mpps]"
#    data: "data csit-vpp-perf-1707-all mean"
#  -
#    title: "17.10 mean [Mpps]"
#    data: "data csit-vpp-perf-1710-all csit-ligato-perf-1710-all mean"
#  -
#    title: "18.01 mean [Mpps]"
#    data: "data csit-vpp-perf-1801-all csit-ligato-perf-1801-all mean"
#  -
#    title: "18.01 stdev [Mpps]"
#    data: "data csit-vpp-perf-1801-all csit-ligato-perf-1801-all stdev"
#  -
#    title: "17.10 to 18.01 change [%]"
#    data: "operation relative_change 5 6"
#  rows: "generated"
#  data:
#    "performance-improvements"
#  filter: "template"
#  parameters:
#  - "throughput"

-
  type: "table"
  title: "Detailed Test Results - VPP Performance Results"
  algorithm: "table_merged_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,PERF,VPP]}/vpp_performance_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data msg"
  rows: "generated"
  data:
    "vpp-perf-results"
  filter: "not 'NDRCHK' and not 'PDRCHK'"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "msg"

-
  type: "table"
  title: "Test configuration - VPP Performance Test Configs"
  algorithm: "table_merged_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTC,PERF,VPP]}/vpp_test_configuration"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "VPP API Test (VAT) Commands History - Commands Used Per Test Case"
    data: "data vat-history"
  rows: "generated"
  data:
    "vpp-perf-results"
  filter: "not 'NDRCHK' and not 'PDRCHK'"
  parameters:
  - "parent"
  - "name"
  - "vat-history"

-
  type: "table"
  title: "Test Operational Data - VPP Performance Operational Data"
  algorithm: "table_merged_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTO,PERF,VPP]}/vpp_test_operational"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "VPP Operational Data - Outputs of 'show runtime' at NDR packet rate"
    data: "data show-run"
  rows: "generated"
  data:
    "vpp-perf-results"
  filter: "not 'NDRCHK' and not 'PDRCHK'"
  parameters:
  - "parent"
  - "name"
  - "show-run"

-
  type: "table"
  title: "Detailed Test Results - VPP MRR Results"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,MRR,VPP]}/vpp_mrr_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data msg"
  rows: "generated"
  data:
    "vpp-mrr-results"
  filter: "'MRR'"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "msg"

-
  type: "table"
  title: "Test configuration - VPP MRR Test Configs"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTC,MRR,VPP]}/vpp_mrr_test_configuration"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "VPP API Test (VAT) Commands History - Commands Used Per Test Case"
    data: "data vat-history"
  rows: "generated"
  data:
    "vpp-mrr-results"
  filter: "'MRR'"
  parameters:
  - "parent"
  - "name"
  - "vat-history"

-
  type: "table"
  title: "Detailed Test Results - VPP Functional Results"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,FUNC,VPP]}/vpp_functional_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data status"
  rows: "generated"
  data:
    "vpp-func-results"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "status"

-
  type: "table"
  title: "Detailed Test Results - VPP Functional Results - CentOS"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,FUNC,VPP,CENTOS]}/vpp_functional_results_centos"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data status"
  rows: "generated"
  data:
    "vpp-func-results-centos"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "status"

-
  type: "table"
  title: "Test configuration - VPP Functional Test Configs"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTC,FUNC,VPP]}/vpp_functional_configuration"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "VPP API Test (VAT) Commands History - Commands Used Per Test Case"
    data: "data vat-history"
  rows: "generated"
  data:
    "vpp-func-results"
  filter: "all"
  parameters:
  - "parent"
  - "name"
  - "vat-history"

-
  type: "table"
  title: "Test configuration - VPP Functional Test Configs - CentOS"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTC,FUNC,VPP,CENTOS]}/vpp_functional_configuration_centos"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "VPP API Test (VAT) Commands History - Commands Used Per Test Case"
    data: "data vat-history"
  rows: "generated"
  data:
    "vpp-func-results-centos"
  filter: "all"
  parameters:
  - "parent"
  - "name"
  - "vat-history"

-
  type: "table"
  title: "Detailed Test Results - Container Orchestrated Topologies Performance Results"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,PERF,COT]}/cot_performance_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data msg"
  rows: "generated"
  data:
    "ligato-perf-results"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "msg"

-
  type: "table"
  title: "Detailed Test Results - DPDK Performance Results"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,PERF,DPDK]}/dpdk_performance_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data msg"
  rows: "generated"
  data:
    "dpdk-perf-results"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "msg"

-
  type: "table"
  title: "Detailed Test Results - Honeycomb Functional Results"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,FUNC,HC]}/hc_functional_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data status"
  rows: "generated"
  data:
    "hc-func-results"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "status"

-
  type: "table"
  title: "Detailed Test Results - NSH SFC Functional Results"
  algorithm: "table_details"
  output-file-ext: ".csv"
  output-file: "{DIR[DTR,FUNC,NSHSFC]}/nsh_sfc_functional_results"
  columns:
  -
    title: "Name"
    data: "data name"
  -
    title: "Documentation"
    data: "data doc"
  -
    title: "Status"
    data: "data status"
  rows: "generated"
  data:
    "nsh-func-results"
  filter: "all"
  parameters:
  - "name"
  - "parent"
  - "doc"
  - "status"

################################################################################
###                                F I L E S                                 ###
################################################################################

-
  type: "file"
  title: "VPP Performance Results"
  algorithm: "file_merged_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,PERF,VPP]}/vpp_performance_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,PERF,VPP]}"
  data:
    "vpp-perf-results"
  filter: "not 'NDRCHK' and not 'PDRCHK'"
  parameters:
  - "name"
  - "doc"
  - "level"
  - "parent"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP Performance Configuration"
  algorithm: "file_merged_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTC,PERF,VPP]}/vpp_performance_configuration"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTC,PERF,VPP]}"
  data:
    "vpp-perf-results"
  filter: "not 'NDRCHK' and not 'PDRCHK'"
  parameters:
  - "name"
  - "doc"
  - "level"
  - "parent"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP Performance Operational Data"
  algorithm: "file_merged_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTO,PERF,VPP]}/vpp_performance_operational_data"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTO,PERF,VPP]}"
  data:
    "vpp-perf-results"
  filter: "not 'NDRCHK' and not 'PDRCHK'"
  parameters:
  - "name"
  - "doc"
  - "level"
  - "parent"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP MRR Results"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,MRR,VPP]}/vpp_mrr_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,MRR,VPP]}"
  data:
    "vpp-mrr-results"
  filter: "'MRR'"
  parameters:
  - "name"
  - "doc"
  - "level"
  - "parent"
  data-start-level: 2  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP MRR Configuration"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTC,MRR,VPP]}/vpp_mrr_configuration"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTC,MRR,VPP]}"
  data:
    "vpp-mrr-results"
  filter: "'MRR'"
  parameters:
  - "name"
  - "doc"
  - "level"
  - "parent"
  data-start-level: 2  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP Functional Results"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,FUNC,VPP]}/vpp_functional_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,FUNC,VPP]}"
  data:
    "vpp-func-results"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP Functional Results - CentOS"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,FUNC,VPP,CENTOS]}/vpp_functional_results_centos"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,FUNC,VPP,CENTOS]}"
  data:
    "vpp-func-results-centos"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP Functional Configuration"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTC,FUNC,VPP]}/vpp_functional_configuration"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTC,FUNC,VPP]}"
  data:
    "vpp-func-results"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "VPP Functional Configuration - CentOS"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTC,FUNC,VPP,CENTOS]}/vpp_functional_configuration_centos"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTC,FUNC,VPP,CENTOS]}"
  data:
    "vpp-func-results-centos"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "Container Orchestrated Performance Results"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,PERF,COT]}/cot_performance_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,PERF,COT]}"
  data:
    "ligato-perf-results"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  data-start-level: 2  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "DPDK Performance Results"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,PERF,DPDK]}/dpdk_performance_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,PERF,DPDK]}"
  data:
    "dpdk-perf-results"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  chapters:
  - "suites"
  data-start-level: 2  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "Honeycomb Functional Results"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,FUNC,HC]}/honeycomb_functional_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,FUNC,HC]}"
  data:
    "hc-func-results"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  chapters:
  - "suites"
  data-start-level: 3  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

-
  type: "file"
  title: "NSH SFC Functional Results"
  algorithm: "file_test_results"
  output-file-ext: ".rst"
  output-file: "{DIR[DTR,FUNC,NSHSFC]}/nshsfc_functional_results"
  file-header: "\n.. |br| raw:: html\n\n    <br />\n\n\n.. |prein| raw:: html\n\n    <pre>\n\n\n.. |preout| raw:: html\n\n    </pre>\n\n"
  dir-tables: "{DIR[DTR,FUNC,NSHSFC]}"
  data:
    "nsh-func-results"
  filter: "all"
  parameters:
  - "name"
  - "doc"
  - "level"
  chapters:
  - "suites"
  data-start-level: 2  # 0, 1, 2, ...
  chapters-start-level: 2  # 0, 1, 2, ...

################################################################################
###                                P L O T S                                 ###
################################################################################

# Plots VPP HTTP Server Performance
-
  type: "plot"
  title: "VPP HTTP Server Performance"
  algorithm: "plot_http_server_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/http-server-performance-cps"
  data:
    "plot-vpp-http-server-performance"
  # Keep this formatting, the filter is enclosed with " (quotation mark) and
  # each tag is enclosed with ' (apostrophe).
  filter: "'HTTP' and 'TCP_CPS'"
  parameters:
  - "result"
  - "name"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "VPP HTTP Server Performance"
    layout:
      "plot-cps"

-
  type: "plot"
  title: "VPP HTTP Server Performance"
  algorithm: "plot_http_server_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/http-server-performance-rps"
  data:
    "plot-vpp-http-server-performance"
  filter: "'HTTP' and 'TCP_RPS'"
  parameters:
  - "result"
  - "name"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "VPP HTTP Server Performance"
    layout:
      "plot-rps"

# Plot Throughput Speedup Analysis

# L2 - 10ge2p1x520 - NDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-l2-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'BASE' and 'NDRDISC' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'LXC' and not 'DOCKER'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# L2 - 40ge2p1xl710 - NDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-l2-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and 'BASE' and 'NDRDISC' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'LXC' and not 'DOCKER'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# L2 - 10ge2p1x520 - PDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-l2-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'LXC' and not 'DOCKER'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IPv4 - 10ge2p1x520 - NDR
-
  type: "plot"
  title: "TSA: 64B-*-ethip4-ip4(base|scale)*ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-ip4-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'IP4FWD' and ('BASE' or 'SCALE') and 'NDRDISC' and not 'VHOST' and not 'FEATURE' and not 'DOT1Q' and not 'IPSEC'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-ethip4-ip4(base|scale)*ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IPv4 - 40ge2p1xl710 - NDR
-
  type: "plot"
  title: "TSA: 64B-*-ethip4-ip4(base|scale)*ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-ip4-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and 'IP4FWD' and ('BASE' or 'SCALE') and 'NDRDISC' and not 'VHOST' and not 'FEATURE' and not 'DOT1Q' and not 'IPSEC'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-ethip4-ip4(base|scale)*ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IPv4 - 10ge2p1x520 - PDR
-
  type: "plot"
  title: "TSA: 64B-*-ethip4-ip4(base|scale)*pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-ip4-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'IP4FWD' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and not 'VHOST' and not 'FEATURE' and not 'DOT1Q' and not 'IPSEC'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-ethip4-ip4(base|scale)*pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IPv6 - 10ge2p1x520 - NDR
-
  type: "plot"
  title: "TSA: 78B-*-ethip6-ip6(base|scale)*ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-78B-ip6-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '78B' and 'IP6FWD' and ('BASE' or 'SCALE') and 'NDRDISC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6-ip6(base|scale)*ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IPv6 - 40ge2p1xl710 - NDR
-
  type: "plot"
  title: "TSA: 78B-*-ethip6-ip6(base|scale)*ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-78B-ip6-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '78B' and 'IP6FWD' and ('BASE' or 'SCALE') and 'NDRDISC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6-ip6(base|scale)*ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IPv6 - 10ge2p1x520 - PDR
-
  type: "plot"
  title: "TSA: 78B-*-ethip6-ip6(base|scale)*pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-78B-ip6-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '78B' and 'IP6FWD' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6-ip6(base|scale)*pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# SRv6 - 10ge2p1x520 - NDR
-
  type: "plot"
  title: "TSA: 78B-*-ethip6-ip6(base|scale)*ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-78B-srv6-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '78B' and 'FEATURE' and 'NDRDISC' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6-ip6(base|scale)*ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# SRv6 - 10ge2p1x520 - PDR
-
  type: "plot"
  title: "TSA: 78B-*-ethip6-ip6(base|scale)*pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-78B-srv6-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '78B' and 'FEATURE' and 'PDRDISC' and not 'NDRDISC' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6-ip6(base|scale)*pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IP4_overlay - NDR
-
  type: "plot"
  title: "TSA: 64B-*-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-ethip4-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'ENCAP' and 'NDRDISC' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IP4_overlay - PDR
-
  type: "plot"
  title: "TSA: 64B-*-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-ethip4-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'ENCAP' and 'PDRDISC' and not 'NDRDISC' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IP6_overlay - NDR
-
  type: "plot"
  title: "TSA: 78B-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-78B-ethip6-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '78B' and 'ENCAP' and 'NDRDISC' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# IP6_overlay - PDR
-
  type: "plot"
  title: "TSA: 78B-*-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-78B-ethip6-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '78B' and 'ENCAP' and 'PDRDISC' and not 'NDRDISC' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "78B-*-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# VM VHOST - NDR
-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-vhost-sel1-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'NDRDISC' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-vhost-sel1-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and 'NDRDISC' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-vhost-sel2-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'NDRDISC' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x710-64B-vhost-sel2-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X710' and '64B' and 'NDRDISC' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-vhost-sel2-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and 'NDRDISC' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# VM VHOST - PDR
-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-vhost-sel1-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'PDRDISC' and not 'NDRDISC' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-vhost-sel1-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and 'PDRDISC' and not 'NDRDISC' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-vhost-sel2-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'PDRDISC' and not 'NDRDISC' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x710-64B-vhost-sel2-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X710' and '64B' and 'PDRDISC' and not 'NDRDISC' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-.*vhost.*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-vhost-sel2-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and 'PDRDISC' and not 'NDRDISC' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# CRYPTO - NDR
-
  type: "plot"
  title: "TSA: 64B-*-.*ipsec.*-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-ipsechw-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and not 'VHOST' and 'IP4FWD' and 'NDRDISC' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*ipsec.*-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# CRYPTO - PDR
-
  type: "plot"
  title: "TSA: 64B-*-.*ipsec.*-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/40ge2p1xl710-64B-ipsechw-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-XL710' and '64B' and not 'VHOST' and 'IP4FWD' and 'PDRDISC' and not 'NDRDISC' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-.*ipsec.*-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# Container memif - NDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-container-memif-tsa-ndrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'BASE' and 'NDRDISC' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# Container memif - PDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-container-memif-tsa-pdrdisc"
  data:
    "plot-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# Container orchestrated - NDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-container-orchestrated-tsa-ndrdisc"
  data:
    "plot-ligato-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and ('BASE' or 'SCALE') and 'NDRDISC' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x710-64B-container-orchestrated-tsa-ndrdisc"
  data:
    "plot-ligato-throughput-speedup-analysis"
  filter: "'NIC_Intel-X710' and '64B' and ('BASE' or 'SCALE') and 'NDRDISC' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# Container orchestrated - PDR
-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x520-64B-container-orchestrated-tsa-pdrdisc"
  data:
    "plot-ligato-throughput-speedup-analysis"
  filter: "'NIC_Intel-X520-DA2' and '64B' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

-
  type: "plot"
  title: "TSA: 64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_throughput_speedup_analysis"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/10ge2p1x710-64B-container-orchestrated-tsa-pdrdisc"
  data:
    "plot-ligato-throughput-speedup-analysis"
  filter: "'NIC_Intel-X710' and '64B' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  - "tags"
  layout:
    title: "64B-*-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput-speedup-analysis"

# Plot packets per second

# VPP L2 sel1
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-l2-sel1-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  # Keep this formatting, the filter is enclosed with " (quotation mark) and
  # each tag is enclosed with ' (apostrophe).
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-l2-sel1-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-l2-sel1-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-l2-sel1-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput"

# VPP L2 sel2
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-l2-sel2-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'FEATURE' and ('ACL10' or 'ACL50') and '10k_FLOWS' and 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-l2-sel2-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'FEATURE' and ('ACL10' or 'ACL50') and '10k_FLOWS' and 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-l2-sel2-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'FEATURE' and ('ACL10' or 'ACL50') and '10k_FLOWS' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-l2-sel2-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'FEATURE' and ('ACL10' or 'ACL50') and '10k_FLOWS' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput"

# VPP IP4
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ethip4-ip4-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '1T1C' and 'IP4FWD' and not 'ACL1' and not 'ACL10' and not '100_FLOWS' and not '100k_FLOWS' and not 'IPSEC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ethip4-ip4-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '2T2C' and 'IP4FWD' and not 'ACL1' and not 'ACL10' and not '100_FLOWS' and not '100k_FLOWS' and not 'IPSEC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ethip4-ip4-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE' or 'FEATURE') and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'IP4FWD' and not 'ACL1' and not 'ACL10' and not '100_FLOWS' and not '100k_FLOWS' and not 'IPSEC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ethip4-ip4-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE' or 'FEATURE') and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'IP4FWD' and not 'ACL1' and not 'ACL10' and not '100_FLOWS' and not '100k_FLOWS' and not 'IPSEC' and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc"
    layout:
      "plot-throughput"

# VPP IP6
-
  type: "plot"
  title: "VPP Performance 78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-ip6-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '1T1C' and 'IP6FWD' and not 'IPSEC' and not 'VHOST' and not 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-ip6-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '2T2C' and 'IP6FWD' and not 'IPSEC' and not 'VHOST' and not 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-ip6-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and ('BASE' or 'SCALE' or 'FEATURE') and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'IP6FWD' and not 'IPSEC' and not 'VHOST' and not 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-ip6-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and ('BASE' or 'SCALE' or 'FEATURE') and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'IP6FWD' and not 'IPSEC' and not 'VHOST' and not 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*pdrdisc"
    layout:
      "plot-throughput"

# VPP SRv6
-
  type: "plot"
  title: "VPP Performance 78B-1t1c-ethip6*srv6*ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-srv6-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'FEATURE' and 'NDRDISC' and '1T1C' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-1t1c-ethip6*srv6*ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-2t2c-ethip6*srv6*ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-srv6-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'FEATURE' and 'NDRDISC' and '2T2C' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-2t2c-ethip6*srv6*ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-1t1c-ethip6*srv6*pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-srv6-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'FEATURE' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-1t1c-ethip6*srv6*pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-2t2c-ethip6*srv6*pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-srv6-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'FEATURE' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-2t2c-ethip6*srv6*pdrdisc"
    layout:
      "plot-throughput"

# VPP IP4_overlay
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ethip4-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'ENCAP' and 'NDRDISC' and '1T1C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ethip4-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'ENCAP' and 'NDRDISC' and '2T2C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ethip4-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'ENCAP' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ethip4-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'ENCAP' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc"
    layout:
      "plot-throughput"

# VPP IP6_overlay
-
  type: "plot"
  title: "VPP Performance 78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'ENCAP' and 'NDRDISC' and '1T1C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'ENCAP' and 'NDRDISC' and '2T2C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'ENCAP' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'ENCAP' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc"
    layout:
      "plot-throughput"

# VPP VM VHOST
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-.*vhost.*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-vhost-sel1-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '1T1C' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-.*vhost.*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-vhost-sel1-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '2T2C' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-.*vhost.*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-vhost-sel1-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-.*vhost.*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-vhost-sel1-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput"

# VPP VM VHOST SELECTION
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-.*vhost.*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-vhost-sel2-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '1T1C' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-.*vhost.*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-vhost-sel2-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '2T2C' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-.*vhost.*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-.*vhost.*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-vhost-sel2-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-.*vhost.*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-vhost-sel2-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-.*vhost.*-pdrdisc"
    layout:
      "plot-throughput"

# VPP CRYPTO
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-.*ipsec.*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ipsechw-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and not 'VHOST' and 'IP4FWD' and 'NDRDISC' and '1T1C' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-.*ipsec.*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-.*ipsec.*-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ipsechw-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and not 'VHOST' and 'IP4FWD' and 'NDRDISC' and '2T2C' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-.*ipsec.*-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-.*ipsec.*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ipsechw-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and not 'VHOST' and 'IP4FWD' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-.*ipsec.*-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-.*ipsec.*-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ipsechw-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and not 'VHOST' and 'IP4FWD' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-.*ipsec.*-pdrdisc"
    layout:
      "plot-throughput"

# DPDK
-
  type: "plot"
  title: "DPDK Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-1t1c-l2-ndrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-2t2c-l2-ndrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-1t1c-ethip4-ip4base-l3fwd-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-1t1c-ipv4-ndrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '1T1C' and 'IP4FWD'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-ethip4-ip4base-l3fwd-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-2t2c-ethip4-ip4base-l3fwd-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-2t2c-ipv4-ndrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '2T2C' and 'IP4FWD'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-ethip4-ip4base-l3fwd-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-1t1c-l2-pdrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-2t2c-l2-pdrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-1t1c-ethip4-ip4base-l3fwd-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-1t1c-ipv4-pdrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'IP4FWD'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-ethip4-ip4base-l3fwd-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "DPDK Performance 64B-2t2c-ethip4-ip4base-l3fwd-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-2t2c-ipv4-pdrdisc"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'IP4FWD'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-ethip4-ip4base-l3fwd-pdrdisc"
    layout:
      "plot-throughput"

# Plot latency

# VPP L2 sel1
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-l2-sel1-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-l2-sel1-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-latency"

# VPP L2 sel2
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-l2-sel2-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('FEATURE' and 'ACL50' and '10k_FLOWS') and 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-l2-sel2-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('FEATURE' and 'ACL50' and '10k_FLOWS') and 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST' and not 'MEMIF'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-latency"

# VPP IP4
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ethip4-ip4-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '1T1C' and 'IP4FWD' and not 'ACL1' and not 'ACL10' and not '100_FLOWS' and not '100k_FLOWS' and not 'IPSEC' and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ethip4-ip4-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '2T2C' and 'IP4FWD' and not 'ACL1' and not 'ACL10' and not '100_FLOWS' and not '100k_FLOWS' and not 'IPSEC' and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-latency"

# VPP IP6
-
  type: "plot"
  title: "VPP Latency 78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-ip6-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '1T1C' and 'IP6FWD' and not 'IPSEC' and not 'VHOST' and not 'SRv6'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-ip6-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and ('BASE' or 'SCALE' or 'FEATURE') and 'NDRDISC' and '2T2C' and 'IP6FWD' and not 'IPSEC' and not 'VHOST' and not 'SRv6'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc"
    layout:
      "plot-latency"

# VPP SRv6
-
  type: "plot"
  title: "VPP Latency 78B-1t1c-ethip6*srv6*ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-srv6-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'FEATURE' and 'NDRDISC' and '1T1C' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "78B-1t1c-ethip6*srv6*ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 78B-2t2c-ethip6*srv6*ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-srv6-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'FEATURE' and 'NDRDISC' and '2T2C' and 'IP6FWD' and 'SRv6'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "78B-2t2c-ethip6*srv6*ndrdisc"
    layout:
      "plot-latency"

# VPP IP4_overlay
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ethip4-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'ENCAP' and 'NDRDISC' and '1T1C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ethip4-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'ENCAP' and 'NDRDISC' and '2T2C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST' and not 'IPSECHW'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-latency"

# VPP IP6_overlay
-
  type: "plot"
  title: "VPP Latency 78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-1t1c-ethip6-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'ENCAP' and 'NDRDISC' and '1T1C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/78B-2t2c-ethip6-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'78B' and 'ENCAP' and 'NDRDISC' and '2T2C' and ('VXLAN' or 'VXLANGPE' or 'LISP' or 'LISPGPE' or 'GRE') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc"
    layout:
      "plot-latency"

# VPP VM VHOST
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-.*vhost.*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-vhost-sel1-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '1T1C' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-.*vhost.*-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-.*vhost.*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-vhost-sel1-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '2T2C' and 'VHOST' and not ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD')"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-.*vhost.*-ndrdisc"
    layout:
      "plot-latency"

# VPP VM VHOST selection
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-.*vhost.*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-vhost-sel2-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '1T1C' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-.*vhost.*-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-.*vhost.*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-vhost-sel2-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'NDRDISC' and '2T2C' and 'VHOST' and not 'VXLAN' and not 'IP4FWD' and not 'DOT1Q' and not '2VM'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-.*vhost.*-ndrdisc"
    layout:
      "plot-latency"

# VPP CRYPTO
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-.*ipsec.*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-ipsechw-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and not 'VHOST' and 'IP4FWD' and 'NDRDISC' and '1T1C' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-.*ipsec.*-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-.*ipsec.*-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-ipsechw-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and not 'VHOST' and 'IP4FWD' and 'NDRDISC' and '2T2C' and 'IPSECHW' and ('IPSECTRAN' or 'IPSECTUN')"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-.*ipsec.*-ndrdisc"
    layout:
      "plot-latency"

# DPDK
-
  type: "plot"
  title: "DPDK Latency 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-1t1c-l2-ndrdisc-lat50"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '1T1C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "DPDK Latency 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-2t2c-l2-ndrdisc-lat50"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '2T2C' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "DPDK Latency 64B-1t1c-ethip4-ip4base-l3fwd-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-1t1c-ipv4-ndrdisc-lat50"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '1T1C' and 'IP4FWD'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-ethip4-ip4base-l3fwd-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "DPDK Latency 64B-2t2c-ethip4-ip4base-l3fwd-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,DPDK]}/64B-2t2c-ipv4-ndrdisc-lat50"
  data:
    "plot-dpdk-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '2T2C' and 'IP4FWD'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-ethip4-ip4base-l3fwd-ndrdisc"
    layout:
      "plot-latency"

# Ligato - Throughput

# Container memif
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-container-memif-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '1T1C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-container-memif-ndrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '2T2C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-container-memif-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-container-memif-pdrdisc"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'BASE' and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput"

# Container orchestrated
-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-container-orchestrated-ndrdisc"
  data:
    "plot-ligato-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '1T1C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-container-orchestrated-ndrdisc"
  data:
    "plot-ligato-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '2T2C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-container-orchestrated-pdrdisc"
  data:
    "plot-ligato-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and '1T1C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput"

-
  type: "plot"
  title: "VPP Performance 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
  algorithm: "plot_performance_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-container-orchestrated-pdrdisc"
  data:
    "plot-ligato-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'PDRDISC' and not 'NDRDISC' and '2T2C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "throughput"
  - "parent"
  traces:
    hoverinfo: "x+y"
    boxpoints: "outliers"
    whiskerwidth: 0
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-pdrdisc"
    layout:
      "plot-throughput"

# Ligato - Latency

# Container memif
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-container-memif-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '1T1C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-container-memif-ndrdisc-lat50"
  data:
    "plot-vpp-throughput-latency"
  filter: "'64B' and 'BASE' and 'NDRDISC' and '2T2C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-latency"

# Container orchestrated
-
  type: "plot"
  title: "VPP Latency 64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-1t1c-container-orchestrated-ndrdisc-lat50"
  data:
    "plot-ligato-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '1T1C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-latency"

-
  type: "plot"
  title: "VPP Latency 64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
  algorithm: "plot_latency_box"
  output-file-type: ".html"
  output-file: "{DIR[STATIC,VPP]}/64B-2t2c-container-orchestrated-ndrdisc-lat50"
  data:
    "plot-ligato-throughput-latency"
  filter: "'64B' and ('BASE' or 'SCALE') and 'NDRDISC' and '2T2C' and 'MEMIF' and ('L2BDMACSTAT' or 'L2BDMACLRN' or 'L2XCFWD') and not 'VHOST'"
  parameters:
  - "latency"
  - "parent"
  traces:
    boxmean: False
  layout:
    title: "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-memif-ndrdisc"
    layout:
      "plot-latency"