X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=docs%2Freport%2Fintroduction%2Fmethodology_mellanox_nic.rst;fp=docs%2Freport%2Fintroduction%2Fmethodology_mellanox_nic.rst;h=40fcb08aab9e05f37c7e7b5b204aa0e5172d5372;hp=0000000000000000000000000000000000000000;hb=9c459a2b303eb8d776ac040bc82830d850a67623;hpb=6c544c7b76a989952417b8cf7618c4cada465ed0;ds=sidebyside diff --git a/docs/report/introduction/methodology_mellanox_nic.rst b/docs/report/introduction/methodology_mellanox_nic.rst new file mode 100644 index 0000000000..40fcb08aab --- /dev/null +++ b/docs/report/introduction/methodology_mellanox_nic.rst @@ -0,0 +1,129 @@ +Mellanox NIC +------------ + +Performance test results using Mellanox ConnectX5 2p100GE are reported for +2-Node Xeon Cascade Lake physical testbed type present in FD.io labs. For +description of physical testbeds used please refer to +:ref:`tested_physical_topologies`. + +Mellanox NIC settings +~~~~~~~~~~~~~~~~~~~~~ + +Mellanox ConnectX5 NIC settings are following recommendations from +[DpdkPerformanceReport]_, [MellanoxDpdkGuide]_ and [MellanoxDpdkBits]_. +Specifically: + +- Flow Control OFF: + :: + + $ ethtool -A $netdev rx off tx off + +- Change PCI MaxReadReq to 1024B for each port of each NIC: + :: + + $ setpci -s $PORT_PCI_ADDRESS 68.w=3BCD + +- Set CQE COMPRESSION to "AGGRESSIVE": + :: + + $ mlxconfig -d $PORT_PCI_ADDRESS set CQE_COMPRESSION=1 + +Mellanox :abbr:`OFED (OpenFabrics Enterprise Distribution)` driver of version +4.6-1.0.1.1 is installed and used to manage the NIC settings. + +:: + + $ sudo ethtool -i enp94s0f0 + driver: mlx5_core + version: 4.6-1.0.1 + firmware-version: 16.25.1020 (MT_0000000009) + expansion-rom-version: + bus-info: 0000:5e:00.0 + supports-statistics: yes + supports-test: yes + supports-eeprom-access: no + supports-register-dump: no + supports-priv-flags: yes + +:: + + $ sudo lspci -vvvs 5e:00.0 + 5e:00.0 Ethernet controller: Mellanox Technologies MT28800 Family [ConnectX-5 Ex] + Subsystem: Mellanox Technologies MT28800 Family [ConnectX-5 Ex] + Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx+ + Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR- + Capabilities: [40] Power Management version 3 + Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0-,D1-,D2-,D3hot-,D3cold+) + Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- + Capabilities: [100 v1] Advanced Error Reporting + UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- + UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol- + UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- + CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr- + CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ + AERCap: First Error Pointer: 04, GenCap+ CGenEn- ChkCap+ ChkEn- + Capabilities: [150 v1] Alternative Routing-ID Interpretation (ARI) + ARICap: MFVC- ACS-, Next Function: 1 + ARICtl: MFVC- ACS-, Function Group: 0 + Capabilities: [1c0 v1] #19 + Capabilities: [230 v1] Access Control Services + ACSCap: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans- + ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans- + Capabilities: [320 v1] #27 + Capabilities: [370 v1] #26 + Capabilities: [420 v1] #25 + Kernel driver in use: mlx5_core + Kernel modules: mlx5_core + +TG and SUT settings +~~~~~~~~~~~~~~~~~~~ + +For the TG and SUT environment settings please refer to +:ref:`_vpp_test_environment` and :ref:`_dpdk_test_environment`. + +Links +~~~~~ + +.. [DpdkPerformanceReport] `DPDK 19.11 performance report ` +.. [MellanoxDpdkGuide] `Mellanox DPDK guide ` +.. [MellanoxDpdkBits] `Mellanox DPDK bits `