X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=docs%2Freport%2Fintroduction%2Ftest_environment_intro.rst;h=ddb14ce9a8494a834eb32c4b6c3c25e3364254a5;hp=d80ecdffe0ffff4807ecb77ee1ee404e90a4002f;hb=07dc2213e6c0e95147e7025b02e91ed89ea07209;hpb=ee1321d27bc39baab5bc2615834fd7392b79a160 diff --git a/docs/report/introduction/test_environment_intro.rst b/docs/report/introduction/test_environment_intro.rst index d80ecdffe0..ddb14ce9a8 100644 --- a/docs/report/introduction/test_environment_intro.rst +++ b/docs/report/introduction/test_environment_intro.rst @@ -1,18 +1,134 @@ -.. _test_environment: - Test Environment ================ -CSIT performance tests are executed on physical testbeds hosted by -:abbr:`LF (Linux Foundation)` for FD.io project. Each testbed consists of -either one (2-node) or two (3-node) servers acting as Systems Under Test (SUT) -and one server acting as Traffic Generator (TG). +.. _test_environment_versioning: + +Environment Versioning +---------------------- + +CSIT test environment versioning has been introduced to track +modifications of the test environment. + +Any benchmark anomalies (progressions, regressions) between releases of +a DUT application (e.g. VPP, DPDK), are determined by testing it in the +same test environment, to avoid test environment changes clouding the +picture. + +A mirror approach is introduced to determine benchmarking anomalies due +to the test environment change. This is achieved by testing the same DUT +application version between releases of CSIT test system. This works +under the assumption that the behaviour of the DUT is deterministic +under the test conditions. + +CSIT test environment versioning scheme ensures integrity of all the +test system components, including their HW revisions, compiled SW code +versions and SW source code, within a specific CSIT version. Components +included in the CSIT environment versioning include: + +- **HW** Server hardware firmware and BIOS (motherboard, processsor, + NIC(s), accelerator card(s)), tracked in CSIT branch in + :file:`./docs/lab/_hw_bios_cfg.md`, e.g. `Xeon + Skylake servers + `_. +- **Linux** Server Linux OS version and configuration, tracked in CSIT + Reports in `SUT Settings + `_ + and `Pre-Test Server Calibration + `_. +- **TRex** TRex Traffic Generator version, drivers and configuration + tracked in `TG Settings + `_. +- **CSIT** CSIT framework code tracked in CSIT release branches. + +Following is the list of CSIT versions to date: + +- Ver. 1 associated with CSIT rls1908 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). +- Ver. 2 associated with CSIT rls2001 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). +- Ver. 4 associated with CSIT rls2005 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). +- Ver. 5 associated with CSIT rls2009 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). + + - The main change is TRex data-plane core resource adjustments: + `increase from 7 to 8 cores and pinning cores to interfaces `_ + for better TRex performance with symmetric traffic profiles. +- Ver. 6 associated with CSIT rls2101 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). + + - The main change is TRex version upgrade: + `increase from 2.82 to 2.86 `_. +- Ver. 7 associated with CSIT rls2106 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). + + - TRex version upgrade: + `increase from 2.86 to 2.88 `_. + - Ubuntu upgrade: + `upgrade from 18.04 LTS to 20.04.2 LTS `_. +- Ver. 8 associated with CSIT rls2110 branch (`HW + `_, `Linux + `_, + `TRex + `_, + `CSIT `_). + + - Intel NIC 700/800 series firmware upgrade based on DPDK compatibility + matrix: `depends on testbed type `_. + +To identify performance changes due to VPP code development between previous +and current VPP release version, both have been tested in CSIT environment of +latest version and compared against each other. All substantial progressions and +regressions have been marked up with RCA analysis. See +:ref:`vpp_throughput_comparisons` and :ref:`vpp_known_issues`. + +Physical Testbeds +----------------- + +FD.io CSIT performance tests are executed in physical testbeds hosted by +:abbr:`LF (Linux Foundation)` for FD.io project. Two physical testbed +topology types are used: + +- **3-Node Topology**: Consisting of two servers acting as SUTs + (Systems Under Test) and one server as TG (Traffic Generator), all + connected in ring topology. +- **2-Node Topology**: Consisting of one server acting as SUTs and one + server as TG both connected in ring topology. + +Tested SUT servers are based on a range of processors including Intel +Intel Xeon Skylake-SP, Intel Xeon Cascade Lake-SP, Arm, +Intel Atom. More detailed description is provided in +:ref:`tested_physical_topologies`. Tested logical topologies are +described in :ref:`tested_logical_topologies`. -Server Specification and Configuration --------------------------------------- +Server Specifications +--------------------- -Complete specification and configuration of compute servers used in CSIT -physical testbeds is maintained on wiki page `CSIT testbed - Server HW -Configuration (Haswell) `_ and -`CSIT testbed - Server HW Configuration (Skylake/ARM) -`_. +Complete technical specifications of compute servers used in CSIT +physical testbeds are maintained in FD.io CSIT repository: +`FD.io CSIT testbeds - Xeon Cascade Lake`_, +`FD.io CSIT testbeds - Xeon Skylake, Arm, Atom`_.