What am I missing? 40GbE Chelsio T580s - slow iperf to Windows on DAC - hardware issue?

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

cudak888

New Member
May 27, 2022
12
0
1
Hello all, first post here, but a casual builder of home servers for video editing and personal storage.

For a long time now, I've run a 10GbE DAC setup between my Windows workstation and an older Nas4Free (XigmaNAS) server. However, I've decided to give 40GbE a try. To do so, I've put together a new build TrueNAS server as an experiment, direct connected to the Windows workstation with a Chelsio T580-LP-CR each, connected with 56GbE-capable QSFP+ cables between them.

However, I'm only getting speeds nearing the max bandwidth of these cards in one direction, as follows:

Results from Windows to server:

Code:
iperf -c 192.168.2.20 -P 8
------------------------------------------------------------
Client connecting to 192.168.2.20, TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[ 10] local 192.168.2.11 port 55568 connected with 192.168.2.20 port 5001
[  9] local 192.168.2.11 port 55567 connected with 192.168.2.20 port 5001
[  5] local 192.168.2.11 port 55563 connected with 192.168.2.20 port 5001
[  3] local 192.168.2.11 port 55561 connected with 192.168.2.20 port 5001
[  8] local 192.168.2.11 port 55566 connected with 192.168.2.20 port 5001
[  4] local 192.168.2.11 port 55562 connected with 192.168.2.20 port 5001
[  6] local 192.168.2.11 port 55564 connected with 192.168.2.20 port 5001
[  7] local 192.168.2.11 port 55565 connected with 192.168.2.20 port 5001
[ ID] Interval       Transfer     Bandwidth
[ 10]  0.0-10.0 sec  4.00 GBytes  3.43 Gbits/sec
[  9]  0.0-10.0 sec  4.08 GBytes  3.51 Gbits/sec
[  5]  0.0-10.0 sec  6.90 GBytes  5.92 Gbits/sec
[  8]  0.0-10.0 sec  4.42 GBytes  3.80 Gbits/sec
[  4]  0.0-10.0 sec  5.26 GBytes  4.52 Gbits/sec
[  6]  0.0-10.0 sec  4.01 GBytes  3.45 Gbits/sec
[  7]  0.0-10.0 sec  5.35 GBytes  4.59 Gbits/sec
[  3]  0.0-10.0 sec  4.16 GBytes  3.57 Gbits/sec
[SUM]  0.0-10.0 sec  38.2 GBytes  32.8 Gbits/sec
Results from server to Windows (same iperf settings, three individual tests conducted):

Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[  4] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57200
[  5] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57202
[  6] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57204
[  7] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57206
[  8] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57198
[  9] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57208
[ 10] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57210
[ 11] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57212
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  1.70 GBytes  1.46 Gbits/sec
[  5]  0.0-10.0 sec  1.71 GBytes  1.46 Gbits/sec
[  6]  0.0-10.0 sec  1.68 GBytes  1.44 Gbits/sec
[  7]  0.0-10.0 sec  1.70 GBytes  1.46 Gbits/sec
[  8]  0.0-10.0 sec  1.72 GBytes  1.48 Gbits/sec
[  9]  0.0-10.0 sec  1.72 GBytes  1.47 Gbits/sec
[ 10]  0.0-10.0 sec  1.72 GBytes  1.48 Gbits/sec
[ 11]  0.0-10.0 sec  1.79 GBytes  1.53 Gbits/sec
[SUM]  0.0-10.0 sec  13.8 GBytes  11.8 Gbits/sec
[  4] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57214
[  5] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57216
[  6] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57218
[  7] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57220
[  8] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57222
[  9] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57224
[ 10] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57226
[ 11] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57228
[  4]  0.0-10.0 sec  1.68 GBytes  1.44 Gbits/sec
[  5]  0.0-10.0 sec  1.65 GBytes  1.41 Gbits/sec
[  6]  0.0-10.0 sec  1.64 GBytes  1.40 Gbits/sec
[  7]  0.0-10.0 sec  1.68 GBytes  1.44 Gbits/sec
[  8]  0.0-10.0 sec  1.66 GBytes  1.43 Gbits/sec
[  9]  0.0-10.0 sec  1.65 GBytes  1.42 Gbits/sec
[ 10]  0.0-10.0 sec  1.64 GBytes  1.41 Gbits/sec
[ 11]  0.0-10.0 sec  1.67 GBytes  1.44 Gbits/sec
[SUM]  0.0-10.0 sec  13.3 GBytes  11.4 Gbits/sec
[  4] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57232
[  5] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57234
[  6] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57236
[  7] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57230
[  8] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57238
[  9] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57240
[ 10] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57242
[ 11] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 57244
[  4]  0.0-10.0 sec  1.65 GBytes  1.42 Gbits/sec
[  5]  0.0-10.0 sec  1.66 GBytes  1.42 Gbits/sec
[  6]  0.0-10.0 sec  1.74 GBytes  1.49 Gbits/sec
[  7]  0.0-10.0 sec  1.67 GBytes  1.43 Gbits/sec
[  8]  0.0-10.0 sec  1.72 GBytes  1.48 Gbits/sec
[  9]  0.0-10.0 sec  1.62 GBytes  1.39 Gbits/sec
[ 10]  0.0-10.0 sec  1.66 GBytes  1.42 Gbits/sec
[ 11]  0.0-10.0 sec  1.73 GBytes  1.48 Gbits/sec
[SUM]  0.0-10.0 sec  13.5 GBytes  11.5 Gbits/sec
(P.S.: I went with iperf 2.0.9 (Windows) here, as iperf3 was apparently unable to saturate the connection in excess of ~25GbE or so).

Box specs are as follows, for the record:

Windows:
  • HP Z8 G4
  • x2 Xeon Silver 4110's
  • 128 GB DDR4
  • 1TB NVMe boot drive
  • Chelsio T580-LP-CR NIC installed in Slot 1 (3.0 x8)
The TrueNAS server is a new/test build, so it is a bit of a mutt with a bunch of different drives installed:
  • Supermicro X10SRH-CF
  • E5-2620 v3
  • 16GB Micron PC4-2400 ECC DDR4
  • 6x SATA+SAS 3TB RAID-Z2 + 3x SATA SSD RAID-Z1 + 2x 1TB NVMe
  • Dell H310 x2 (crossflashed)
  • Chelsio T580-LP-CR NIC installed in Slot 4 (3.0 x8)

Both NICs are set with MTU 9014.

I originally thought I was potentially looking at a PCIe bottleneck, but I also verified that both Windows and the TrueNAS server are running the cards at PCIe 3.0 x8:

Windows workstation:

Code:
Name                           Segment Bus Device Function Slot NumaNode PcieLinkSpeed PcieLinkWidth Version
----                           ------- --- ------ -------- ---- -------- ------------- ------------- -------
Ethernet                             0   0     31        6             0       Unknown
Chelsio Left                         0 166      0        4    1        1      8.0 GT/s             8 1.1
Chelsio Right                        0 166      0        4    1        1      8.0 GT/s             8 1.1
Local Area Connection                0   4      0        0             0      2.5 GT/s             1 1.1
Ethernet 3                           0   4      0        2             0      2.5 GT/s             1 1.1

Server - LnkCap and LnkSta look good for both ports:


Code:
05:00.0 Ethernet controller: Chelsio Communications Inc T580-LP-CR Unified Wire                                                                                                                                           Ethernet Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 40
        Region 0: Memory at f9900000 (64-bit, non-prefetchable)
        Region 2: Memory at f9880000 (64-bit, non-prefetchable)
        Region 4: Memory at f998c000 (64-bit, non-prefetchable)
        Expansion ROM at f9800000 [disabled]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/8 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF                                                                                                                                           Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkCap2: Supported Link Speeds: 2.5-8GT/s, Crosslink- Retimer- 2                                                                                                                                          Retimers- DRS-
                LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
                         Transmit Margin: Normal Operating Range, EnterModifiedC                                                                                                                                          ompliance- ComplianceSOS-
                         Compliance De-emphasis: -6dB
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete+                                                                                                                                           EqualizationPhase1+
                         EqualizationPhase2+ EqualizationPhase3+ LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable- Count=8 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [140 v1] Virtual Channel
                Caps:   LPEVC=0 RefClk=100ns PATEntryBits=1
                Arb:    Fixed- WRR32- WRR64- WRR128-
                Ctrl:   ArbSelect=Fixed
                Status: InProgress-
                VC0:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
                        Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
                        Ctrl:   Enable+ ID=0 ArbSelect=Fixed TC/VC=01
                        Status: NegoPending- InProgress-
                VC1:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
                        Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
                        Ctrl:   Enable- ID=1 ArbSelect=Fixed TC/VC=00
                        Status: NegoPending- InProgress-
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 1
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 16, Total VFs: 16, Number of VFs: 0, Function Depen                                                                                                                                          dency Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table

05:00.1 Ethernet controller: Chelsio Communications Inc T580-LP-CR Unified Wire                                                                                                                                           Ethernet Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin B routed to IRQ 44
        Region 0: Memory at f9780000 (64-bit, non-prefetchable)
        Region 2: Memory at f9700000 (64-bit, non-prefetchable)
        Region 4: Memory at f998a000 (64-bit, non-prefetchable)
        Expansion ROM at f9680000 [disabled]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/8 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF                                                                                                                                           Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-                                                                                                                                           EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable- Count=8 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 2
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 16, Total VFs: 16, Number of VFs: 0, Function Depen                                                                                                                                          dency Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table

05:00.2 Ethernet controller: Chelsio Communications Inc T580-LP-CR Unified Wire                                                                                                                                           Ethernet Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin C routed to IRQ 45
        Region 0: Memory at f9600000 (64-bit, non-prefetchable)
        Region 2: Memory at f9580000 (64-bit, non-prefetchable)
        Region 4: Memory at f9988000 (64-bit, non-prefetchable)
        Expansion ROM at f9500000 [disabled]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/8 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF                                                                                                                                           Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-                                                                                                                                           EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable- Count=8 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 3
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 16, Total VFs: 16, Number of VFs: 0, Function Depen                                                                                                                                          dency Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table

05:00.3 Ethernet controller: Chelsio Communications Inc T580-LP-CR Unified Wire                                                                                                                                           Ethernet Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin D routed to IRQ 46
        Region 0: Memory at f9480000 (64-bit, non-prefetchable)
        Region 2: Memory at f9400000 (64-bit, non-prefetchable)
        Region 4: Memory at f9986000 (64-bit, non-prefetchable)
        Expansion ROM at f9380000 [disabled]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/8 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF                                                                                                                                           Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-                                                                                                                                           EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable- Count=8 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 4
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 16, Total VFs: 16, Number of VFs: 0, Function Depen                                                                                                                                          dency Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table

05:00.4 Ethernet controller: Chelsio Communications Inc T580-LP-CR Unified Wire                                                                                                                                           Ethernet Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 40
        Region 0: Memory at f9300000 (64-bit, non-prefetchable)
        Region 2: Memory at f8000000 (64-bit, non-prefetchable)
        Region 4: Memory at f9984000 (64-bit, non-prefetchable)
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/32 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 4096 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 4s to 13s, TimeoutDis- LTR- OBFF Di                                                                                                                                          sabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-                                                                                                                                           EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable+ Count=128 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 5
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 0, Total VFs: 0, Number of VFs: 0, Function Depende                                                                                                                                          ncy Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table

05:00.5 SCSI storage controller: Chelsio Communications Inc T580-LP-CR Unified W                                                                                                                                          ire Storage Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin B routed to IRQ 44
        Region 0: Memory at f9280000 (64-bit, non-prefetchable)
        Region 2: Memory at f9200000 (64-bit, non-prefetchable)
        Region 4: Memory at f9982000 (64-bit, non-prefetchable)
        Expansion ROM at f9180000 [disabled]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/32 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF                                                                                                                                           Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-                                                                                                                                           EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable- Count=40 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 6
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 0, Total VFs: 0, Number of VFs: 0, Function Depende                                                                                                                                          ncy Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table

05:00.6 Fibre Channel: Chelsio Communications Inc T580-LP-CR Unified Wire Storag                                                                                                                                          e Controller
        Subsystem: Chelsio Communications Inc Device 0000
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step                                                                                                                                          ping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-                                                                                                                                           <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin C routed to IRQ 45
        Region 0: Memory at f9100000 (64-bit, non-prefetchable)
        Region 2: Memory at f9080000 (64-bit, non-prefetchable)
        Region 4: Memory at f9980000 (64-bit, non-prefetchable)
        Expansion ROM at f9000000 [disabled]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot                                                                                                                                          -,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [50] MSI: Enable- Count=1/32 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s unlimite                                                                                                                                          d, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowe                                                                                                                                          rLimit 25.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransP                                                                                                                                          end-
                LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM not supported
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (ok), Width x8 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- L                                                                                                                                          TR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt-                                                                                                                                           EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerRe                                                                                                                                          ductionInit-
                         FRS- TPHComp+ ExtTPHComp-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF                                                                                                                                           Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-                                                                                                                                           EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizatio                                                                                                                                          nRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [b0] MSI-X: Enable- Count=40 Masked-
                Vector table: BAR=4 offset=00000000
                PBA: BAR=4 offset=00001000
        Capabilities: [d0] Vital Product Data
                Not readable
        Capabilities: [100 v2] 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- AdvNonFatalEr                                                                                                                                          r+
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalEr                                                                                                                                          r+
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkC                                                                                                                                          ap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [170 v1] Device Serial Number 00-00-00-00-00-00-00-00
        Capabilities: [190 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 7
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [1a0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Capabilities: [1c0 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
                IOVSta: Migration-
                Initial VFs: 0, Total VFs: 0, Number of VFs: 0, Function Depende                                                                                                                                          ncy Link: 00
                VF offset: 8, stride: 4, Device ID: 5810
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 2: Memory at 0000000000000000 (64-bit, non-prefetchable)
                Region 4: Memory at 0000000000001000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [200 v1] Transaction Processing Hints
                Interrupt vector mode supported
                Steering table in MSI-X table
In the course of this mess, I've booted the server up with both the BSD-based TrueNAS CORE and have also tried the Linux-based SCALE as well, with little change between these results (or various DD speed tests of the drive pools themselves, though that's an entirely separate discussion).

Also, while I'll admit the E5-2620 v3 isn't the hottest processor in the world, it does have 40 lanes and is supposed to provide full x8 speed to the PCIe slots, and not once was any core pegged during tests in TrueNAS.

However, I decided to see if I could isolate this from TrueNAS entirely and so booted a live Ubuntu USB to the server, and re-did the iperf tests. Virtually identical.

At this point, I'm stumped, and I'm also concerned that I'm falling into some confirmation bias about this being hardware related and not tuning. Greatly appreciate any assistance or suggestions where to look next.

-Kurt

P.S.: Full disclosure, a fair amount of what I've done here is from massive Google-fu to re-kickstart everything I'd since forgotten when I built my NAS4Free boxes. I'm 100% self taught on this, so please bear with me if I'm slow on some suggestions.
 
Last edited:

cudak888

New Member
May 27, 2022
12
0
1
Quick update:

I wanted to see if I could eliminate Windows as a potential factor, so I booted up a Live USB of Ubuntu 22.0 into the TrueNAS server, and then grabbed a spare box to run the TrueNAS copy from (in retrospect, it would have made a LOT more sense to do it the other way around, but in the order I tested everything, I wound up booting the server to Ubuntu first).

Anyway, here are the specs of the box that was now running TrueNAS:
  • Asus Sabertooth X99
  • E5-2620 v3
  • 20GB Hynix PC4-2400 ECC DDR4
  • No drives or HBA
  • Mellanox Connect-X3 MCX354A-FCBT
I had to swap to the Mellanox as this box wouldn't recognize the Chelsio card in either of it's x16 slots for some reason when booted to Ubuntu (the original test was supposed to be Ubuntu to Ubuntu). Whatever the case, the Mellanox card remained for these tests.

Just to be crystal clear, the following box was now running Ubuntu 22 for the test that followed:
  • Supermicro X10SRH-CF
  • E5-2620 v3
  • 16GB Micron PC4-2400 ECC DDR4
  • 6x SATA+SAS 3TB RAID-Z2 + 3x SATA SSD RAID-Z1 + 2x 1TB NVMe
  • Dell H310 x2 (crossflashed)
  • Chelsio T580-LP-CR NIC installed in Slot 4 (3.0 x8)

With this setup, I DAC'ed the Chelsio T580 to the MCX354A and proceeded to run multiple tests of iPerf with different numbers of streams.

I noted that it seems as if a single stream cannot saturate the connection, but at least two streams does the job.

From Ubuntu to TrueNAS:

One stream:
Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------ 
[  1] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39124
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-10.00 sec  35.7 GBytes  30.7 Gbits/sec
Two streams:
Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[ 28] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39192
[ 29] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39190
[ ID] Interval       Transfer     Bandwidth
[ 28] 0.00-10.00 sec  21.9 GBytes  18.8 Gbits/sec
[ 29] 0.00-10.00 sec  21.9 GBytes  18.8 Gbits/sec
[SUM] 0.00-10.00 sec  43.7 GBytes  37.6 Gbits/sec
Four streams:
Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39132
[  2] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39126
[  3] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39130
[  4] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39134
[ ID] Interval       Transfer     Bandwidth
[  2] 0.00-10.00 sec  10.9 GBytes  9.39 Gbits/sec
[  4] 0.00-10.00 sec  10.9 GBytes  9.39 Gbits/sec
[  3] 0.00-10.00 sec  10.9 GBytes  9.39 Gbits/sec
[  1] 0.00-10.00 sec  10.9 GBytes  9.38 Gbits/sec
[SUM] 0.00-10.00 sec  43.7 GBytes  37.6 Gbits/sec
Six streams:
Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[ 21] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39174
[ 22] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39176
[ 23] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39178
[ 24] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39180
[ 25] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39182
[ 26] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39184
[ ID] Interval       Transfer     Bandwidth
[ 21] 0.00-10.01 sec  7.28 GBytes  6.25 Gbits/sec
[ 23] 0.00-10.00 sec  7.29 GBytes  6.26 Gbits/sec
[ 22] 0.00-10.00 sec  7.29 GBytes  6.26 Gbits/sec
[ 25] 0.00-10.00 sec  7.29 GBytes  6.26 Gbits/sec
[ 24] 0.00-10.00 sec  7.30 GBytes  6.27 Gbits/sec
[ 26] 0.00-10.00 sec  7.29 GBytes  6.26 Gbits/sec
[SUM] 0.00-10.00 sec  43.7 GBytes  37.6 Gbits/sec
Sixteen streams:
Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39132
[  2] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39126
[  3] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39130
[  4] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39134
[ ID] Interval       Transfer     Bandwidth
[  2] 0.00-10.00 sec  10.9 GBytes  9.39 Gbits/sec
[  4] 0.00-10.00 sec  10.9 GBytes  9.39 Gbits/sec
[  3] 0.00-10.00 sec  10.9 GBytes  9.39 Gbits/sec
[  1] 0.00-10.00 sec  10.9 GBytes  9.38 Gbits/sec
[SUM] 0.00-10.00 sec  43.7 GBytes  37.6 Gbits/sec

[  5] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39146
[  6] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39144
[  8] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39138
[ 10] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39136
[ 11] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39154
[ 12] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39158
[ 13] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39156
[ 14] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39162
[ 15] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39160
[ 17] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39166
[ 18] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39168
[ 19] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39170
[ 20] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39172
[  7] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39142
[ 16] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39164
[  9] local 192.168.4.50 port 5001 connected with 192.168.4.200 port 39150
[ ID] Interval       Transfer     Bandwidth
[ 16] 0.00-10.00 sec  4.80 GBytes  4.12 Gbits/sec
[ 18] 0.00-10.01 sec  1.17 GBytes  1.01 Gbits/sec
[ 20] 0.00-10.01 sec  1.18 GBytes  1.01 Gbits/sec
[  9] 0.00-10.01 sec  1.18 GBytes  1.02 Gbits/sec
[ 11] 0.00-10.01 sec  2.37 GBytes  2.03 Gbits/sec
[ 12] 0.00-10.01 sec  2.41 GBytes  2.07 Gbits/sec
[  7] 0.00-10.01 sec  2.41 GBytes  2.07 Gbits/sec
[ 14] 0.00-10.00 sec  4.83 GBytes  4.15 Gbits/sec
[ 17] 0.00-10.01 sec  2.37 GBytes  2.03 Gbits/sec
[  5] 0.00-10.01 sec  2.40 GBytes  2.06 Gbits/sec
[ 10] 0.00-10.01 sec  4.82 GBytes  4.14 Gbits/sec
[ 13] 0.00-10.01 sec  1.15 GBytes   991 Mbits/sec
[ 15] 0.00-10.01 sec  2.41 GBytes  2.07 Gbits/sec
[  6] 0.00-10.01 sec  2.40 GBytes  2.06 Gbits/sec
[ 19] 0.00-10.01 sec  2.41 GBytes  2.07 Gbits/sec
[  8] 0.00-10.00 sec  4.84 GBytes  4.15 Gbits/sec
[SUM] 0.00-10.01 sec  43.2 GBytes  37.0 Gbits/sec
All things considered, looking good. Now I reversed the test:

TrueNAS Core to Ubuntu

One stream:
Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 58091 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-10.01 sec  32.5 GBytes  27.9 Gbits/sec
Two streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 61789 connected with 192.168.4.200 port 5001
[  2] local 192.168.4.50 port 61017 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  2] 0.00-10.00 sec  21.3 GBytes  18.3 Gbits/sec
[  1] 0.00-10.00 sec  21.8 GBytes  18.7 Gbits/sec
[SUM] 0.00-10.00 sec  43.0 GBytes  37.0 Gbits/sec
Four streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  4] local 192.168.4.50 port 21295 connected with 192.168.4.200 port 5001
[  2] local 192.168.4.50 port 14249 connected with 192.168.4.200 port 5001
[  1] local 192.168.4.50 port 33768 connected with 192.168.4.200 port 5001
[  3] local 192.168.4.50 port 45323 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  2] 0.00-10.02 sec  3.94 GBytes  3.38 Gbits/sec
[  4] 0.00-10.02 sec  3.11 GBytes  2.67 Gbits/sec
[  3] 0.00-10.02 sec  3.58 GBytes  3.07 Gbits/sec
[  1] 0.00-10.02 sec  12.3 GBytes  10.5 Gbits/sec
[SUM] 0.00-10.00 sec  22.9 GBytes  19.7 Gbits/sec
^ Thought this was unusually low and ran four streams again:

Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 45947 connected with 192.168.4.200 port 5001
[  4] local 192.168.4.50 port 43379 connected with 192.168.4.200 port 5001
[  3] local 192.168.4.50 port 59398 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3] 0.00-10.00 sec  13.5 GBytes  11.6 Gbits/sec
[  1] 0.00-10.00 sec  17.0 GBytes  14.6 Gbits/sec
[  2] 0.00-10.00 sec  5.87 GBytes  5.04 Gbits/sec
[  4] 0.00-10.02 sec  5.89 GBytes  5.05 Gbits/sec
[SUM] 0.00-10.00 sec  42.2 GBytes  36.3 Gbits/sec
Six streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  2] local 192.168.4.50 port 61014 connected with 192.168.4.200 port 5001
[  1] local 192.168.4.50 port 16190 connected with 192.168.4.200 port 5001
[  3] local 192.168.4.50 port 51444 connected with 192.168.4.200 port 5001
[  6] local 192.168.4.50 port 33018 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  2] 0.00-10.01 sec  4.53 GBytes  3.89 Gbits/sec
[  4] 0.00-10.01 sec  2.94 GBytes  2.53 Gbits/sec
[  5] 0.00-10.01 sec  2.94 GBytes  2.53 Gbits/sec
[  6] 0.00-10.01 sec  4.42 GBytes  3.79 Gbits/sec
[  1] 0.00-10.01 sec  7.17 GBytes  6.15 Gbits/sec
[  3] 0.00-10.01 sec  8.27 GBytes  7.10 Gbits/sec
[SUM] 0.00-10.00 sec  30.3 GBytes  26.0 Gbits/sec
Sixteen streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 15487 connected with 192.168.4.200 port 5001
[  4] local 192.168.4.50 port 61956 connected with 192.168.4.200 port 5001
[  5] local 192.168.4.50 port 48901 connected with 192.168.4.200 port 5001
[  8] local 192.168.4.50 port 12076 connected with 192.168.4.200 port 5001
[  6] local 192.168.4.50 port 14464 connected with 192.168.4.200 port 5001
[ 10] local 192.168.4.50 port 41888 connected with 192.168.4.200 port 5001
[  9] local 192.168.4.50 port 38823 connected with 192.168.4.200 port 5001
[ 11] local 192.168.4.50 port 39745 connected with 192.168.4.200 port 5001
[ 12] local 192.168.4.50 port 37772 connected with 192.168.4.200 port 5001
[ 13] local 192.168.4.50 port 65095 connected with 192.168.4.200 port 5001
[ 14] local 192.168.4.50 port 63611 connected with 192.168.4.200 port 5001
[ 16] local 192.168.4.50 port 15303 connected with 192.168.4.200 port 5001
[ 15] local 192.168.4.50 port 34576 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[ 13] 0.00-10.02 sec  1.46 GBytes  1.26 Gbits/sec
[ 14] 0.00-10.01 sec  4.35 GBytes  3.73 Gbits/sec
[ 12] 0.00-10.01 sec  1.50 GBytes  1.29 Gbits/sec
[  5] 0.00-10.01 sec  1.21 GBytes  1.04 Gbits/sec
[  8] 0.00-10.01 sec  1.75 GBytes  1.50 Gbits/sec
[ 11] 0.00-10.02 sec  1.67 GBytes  1.43 Gbits/sec
[  7] 0.00-10.01 sec  1.28 GBytes  1.10 Gbits/sec
[  3] 0.00-10.01 sec  4.69 GBytes  4.03 Gbits/sec
[  9] 0.00-10.01 sec  1.32 GBytes  1.14 Gbits/sec
[ 10] 0.00-10.02 sec  4.06 GBytes  3.49 Gbits/sec
[  4] 0.00-10.01 sec  1.19 GBytes  1.02 Gbits/sec
[  2] 0.00-10.01 sec  1010 MBytes   846 Mbits/sec
[ 16] 0.00-10.01 sec  1.39 GBytes  1.19 Gbits/sec
[  6] 0.00-10.01 sec  1.20 GBytes  1.03 Gbits/sec
[ 15] 0.00-10.01 sec  3.44 GBytes  2.95 Gbits/sec
[  1] 0.00-10.01 sec  4.72 GBytes  4.05 Gbits/sec
[SUM] 0.00-10.00 sec  36.2 GBytes  31.1 Gbits/sec
^ I ran this one a few times and was getting inconsistent results:

Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  1] local 192.168.4.50 port 59639 connected with 192.168.4.200 port 5001
[  3] local 192.168.4.50 port 15255 connected with 192.168.4.200 port 5001
[  4] local 192.168.4.50 port 37279 connected with 192.168.4.200 port 5001
[ 16] local 192.168.4.50 port 54680 connected with 192.168.4.200 port 5001
[  5] local 192.168.4.50 port 44291 connected with 192.168.4.200 port 5001
[  6] local 192.168.4.50 port 23300 connected with 192.168.4.200 port 5001
[  7] local 192.168.4.50 port 45849 connected with 192.168.4.200 port 5001
[  8] local 192.168.4.50 port 62970 connected with 192.168.4.200 port 5001
[  9] local 192.168.4.50 port 53875 connected with 192.168.4.200 port 5001
[ 10] local 192.168.4.50 port 18708 connected with 192.168.4.200 port 5001
[ 11] local 192.168.4.50 port 32274 connected with 192.168.4.200 port 5001
[ 12] local 192.168.4.50 port 52173 connected with 192.168.4.200 port 5001
[ 13] local 192.168.4.50 port 10160 connected with 192.168.4.200 port 5001
[ 14] local 192.168.4.50 port 25263 connected with 192.168.4.200 port 5001
[ 15] local 192.168.4.50 port 11281 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  9] 0.00-10.02 sec  1.38 GBytes  1.18 Gbits/sec
[  7] 0.00-10.02 sec  1.57 GBytes  1.34 Gbits/sec
[ 10] 0.00-10.02 sec  1.46 GBytes  1.25 Gbits/sec
[  4] 0.00-10.02 sec  1.27 GBytes  1.09 Gbits/sec
[ 11] 0.00-10.02 sec  2.09 GBytes  1.80 Gbits/sec
[ 14] 0.00-10.02 sec  1.41 GBytes  1.21 Gbits/sec
[  2] 0.00-10.02 sec  5.43 GBytes  4.65 Gbits/sec
[  8] 0.00-10.02 sec   971 MBytes   813 Mbits/sec
[ 12] 0.00-10.02 sec  5.77 GBytes  4.95 Gbits/sec
[ 13] 0.00-10.02 sec  2.19 GBytes  1.87 Gbits/sec
[  5] 0.00-10.02 sec  2.05 GBytes  1.76 Gbits/sec
[ 16] 0.00-10.02 sec  1.36 GBytes  1.17 Gbits/sec
[  1] 0.00-10.02 sec  1.29 GBytes  1.11 Gbits/sec
[ 15] 0.00-10.02 sec  1.03 GBytes   881 Mbits/sec
[  3] 0.00-10.02 sec  1.54 GBytes  1.32 Gbits/sec
[  6] 0.00-11.02 sec  1.19 GBytes   930 Mbits/sec
[SUM] 0.00-10.00 sec  32.0 GBytes  27.5 Gbits/sec
Once again, sixteen streams, round #3:

Code:
------------------------------------------------------------
Client connecting to 192.168.4.200, TCP port 5001
TCP window size: 32.8 KByte (default)
------------------------------------------------------------
[  2] local 192.168.4.50 port 51378 connected with 192.168.4.200 port 5001
[  1] local 192.168.4.50 port 17588 connected with 192.168.4.200 port 5001
[  5] local 192.168.4.50 port 51919 connected with 192.168.4.200 port 5001
[  3] local 192.168.4.50 port 33530 connected with 192.168.4.200 port 5001
[  4] local 192.168.4.50 port 56726 connected with 192.168.4.200 port 5001
[  6] local 192.168.4.50 port 38809 connected with 192.168.4.200 port 5001
[  7] local 192.168.4.50 port 39049 connected with 192.168.4.200 port 5001
[  9] local 192.168.4.50 port 62313 connected with 192.168.4.200 port 5001
[  8] local 192.168.4.50 port 11622 connected with 192.168.4.200 port 5001
[ 11] local 192.168.4.50 port 45879 connected with 192.168.4.200 port 5001
[ 12] local 192.168.4.50 port 13644 connected with 192.168.4.200 port 5001
[ 10] local 192.168.4.50 port 16332 connected with 192.168.4.200 port 5001
[ 13] local 192.168.4.50 port 49332 connected with 192.168.4.200 port 5001
[ 14] local 192.168.4.50 port 19535 connected with 192.168.4.200 port 5001
[ 16] local 192.168.4.50 port 58244 connected with 192.168.4.200 port 5001
[ 15] local 192.168.4.50 port 40147 connected with 192.168.4.200 port 5001
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-10.01 sec  3.99 GBytes  3.42 Gbits/sec
[ 16] 0.00-10.02 sec  1.57 GBytes  1.35 Gbits/sec
[ 13] 0.00-10.02 sec  1.02 GBytes   877 Mbits/sec
[  7] 0.00-10.02 sec  1.56 GBytes  1.34 Gbits/sec
[  8] 0.00-10.02 sec  1.59 GBytes  1.37 Gbits/sec
[  6] 0.00-10.01 sec  1016 MBytes   851 Mbits/sec
[  5] 0.00-10.01 sec  3.79 GBytes  3.25 Gbits/sec
[  2] 0.00-10.02 sec   994 MBytes   832 Mbits/sec
[ 14] 0.00-10.01 sec  1.05 GBytes   904 Mbits/sec
[ 10] 0.00-10.02 sec   872 MBytes   731 Mbits/sec
[  9] 0.00-10.01 sec  1.68 GBytes  1.44 Gbits/sec
[  4] 0.00-10.02 sec   965 MBytes   808 Mbits/sec
[ 15] 0.00-10.02 sec  1.56 GBytes  1.34 Gbits/sec
[ 11] 0.00-10.01 sec   975 MBytes   817 Mbits/sec
[ 12] 0.00-10.02 sec  3.37 GBytes  2.89 Gbits/sec
[  3] 0.00-11.02 sec  2.73 GBytes  2.13 Gbits/sec
[SUM] 0.00-10.01 sec  28.6 GBytes  24.6 Gbits/sec
So it seems as if the connection from the TrueNAS server to Ubuntu can manage a respectable 36.3Gbits/s, but not reliably, and not above or below four parallel streams.

To refresh my memory, I went ahead and reconfigured everything back to the Windows and TrueNAS box to do these same exact tests:

Windows to TrueNAS Core:

One stream:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.20, TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[  3] local 192.168.2.11 port 62347 connected with 192.168.2.20 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  14.3 GBytes  12.3 Gbits/sec
Two streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.20, TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[  3] local 192.168.2.11 port 62351 connected with 192.168.2.20 port 5001
[  4] local 192.168.2.11 port 62352 connected with 192.168.2.20 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  12.8 GBytes  11.0 Gbits/sec
[  4]  0.0-10.0 sec  13.1 GBytes  11.2 Gbits/sec
[SUM]  0.0-10.0 sec  25.9 GBytes  22.2 Gbits/sec
Four streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.20, TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[  4] local 192.168.2.11 port 62359 connected with 192.168.2.20 port 5001
[  6] local 192.168.2.11 port 62361 connected with 192.168.2.20 port 5001
[  5] local 192.168.2.11 port 62360 connected with 192.168.2.20 port 5001
[  3] local 192.168.2.11 port 62358 connected with 192.168.2.20 port 5001
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  11.0 GBytes  9.41 Gbits/sec
[  6]  0.0-10.0 sec  10.8 GBytes  9.29 Gbits/sec
[  5]  0.0-10.0 sec  10.9 GBytes  9.35 Gbits/sec
[  3]  0.0-10.0 sec  11.0 GBytes  9.45 Gbits/sec
[SUM]  0.0-10.0 sec  43.7 GBytes  37.5 Gbits/sec
Six streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.20, TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[  8] local 192.168.2.11 port 62381 connected with 192.168.2.20 port 5001
[  7] local 192.168.2.11 port 62380 connected with 192.168.2.20 port 5001
[  6] local 192.168.2.11 port 62379 connected with 192.168.2.20 port 5001
[  5] local 192.168.2.11 port 62378 connected with 192.168.2.20 port 5001
[  3] local 192.168.2.11 port 62376 connected with 192.168.2.20 port 5001
[  4] local 192.168.2.11 port 62377 connected with 192.168.2.20 port 5001
[ ID] Interval       Transfer     Bandwidth
[  8]  0.0-10.0 sec  8.01 GBytes  6.88 Gbits/sec
[  7]  0.0-10.0 sec  7.70 GBytes  6.61 Gbits/sec
[  6]  0.0-10.0 sec  7.19 GBytes  6.17 Gbits/sec
[  5]  0.0-10.0 sec  7.66 GBytes  6.58 Gbits/sec
[  3]  0.0-10.0 sec  7.19 GBytes  6.17 Gbits/sec
[  4]  0.0-10.0 sec  7.57 GBytes  6.50 Gbits/sec
[SUM]  0.0-10.0 sec  45.3 GBytes  38.9 Gbits/sec
Sixteen streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.20, TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[ 18] local 192.168.2.11 port 62414 connected with 192.168.2.20 port 5001
[ 13] local 192.168.2.11 port 62409 connected with 192.168.2.20 port 5001
[ 17] local 192.168.2.11 port 62413 connected with 192.168.2.20 port 5001
[ 16] local 192.168.2.11 port 62412 connected with 192.168.2.20 port 5001
[ 15] local 192.168.2.11 port 62411 connected with 192.168.2.20 port 5001
[ 14] local 192.168.2.11 port 62410 connected with 192.168.2.20 port 5001
[ 12] local 192.168.2.11 port 62408 connected with 192.168.2.20 port 5001
[ 11] local 192.168.2.11 port 62407 connected with 192.168.2.20 port 5001
[ 10] local 192.168.2.11 port 62406 connected with 192.168.2.20 port 5001
[  9] local 192.168.2.11 port 62405 connected with 192.168.2.20 port 5001
[  8] local 192.168.2.11 port 62404 connected with 192.168.2.20 port 5001
[  6] local 192.168.2.11 port 62402 connected with 192.168.2.20 port 5001
[  7] local 192.168.2.11 port 62403 connected with 192.168.2.20 port 5001
[  3] local 192.168.2.11 port 62399 connected with 192.168.2.20 port 5001
[  4] local 192.168.2.11 port 62400 connected with 192.168.2.20 port 5001
[  5] local 192.168.2.11 port 62401 connected with 192.168.2.20 port 5001
[ ID] Interval       Transfer     Bandwidth
[ 18]  0.0-10.0 sec  1.93 GBytes  1.66 Gbits/sec
[ 13]  0.0-10.0 sec  2.86 GBytes  2.45 Gbits/sec
[ 17]  0.0-10.0 sec  2.85 GBytes  2.45 Gbits/sec
[ 16]  0.0-10.0 sec  2.88 GBytes  2.47 Gbits/sec
[ 15]  0.0-10.0 sec  2.86 GBytes  2.46 Gbits/sec
[ 14]  0.0-10.0 sec  2.86 GBytes  2.46 Gbits/sec
[ 12]  0.0-10.0 sec  2.88 GBytes  2.47 Gbits/sec
[ 11]  0.0-10.0 sec  2.86 GBytes  2.46 Gbits/sec
[ 10]  0.0-10.0 sec  2.84 GBytes  2.44 Gbits/sec
[  9]  0.0-10.0 sec  2.85 GBytes  2.45 Gbits/sec
[  8]  0.0-10.0 sec  2.86 GBytes  2.45 Gbits/sec
[  6]  0.0-10.0 sec  2.84 GBytes  2.44 Gbits/sec
[  7]  0.0-10.0 sec  2.88 GBytes  2.47 Gbits/sec
[  3]  0.0-10.0 sec  1.95 GBytes  1.68 Gbits/sec
[  4]  0.0-10.0 sec  1.90 GBytes  1.64 Gbits/sec
[  5]  0.0-10.0 sec  5.16 GBytes  4.43 Gbits/sec
[SUM]  0.0-10.0 sec  45.3 GBytes  38.9 Gbits/sec
This time, it took four streams before saturating the connection, but it uses all of the bandwidth.

On the other hand, here are the results in the other direction:

TrueNAS Core to Windows:

One stream:
Code:
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  208 KByte (default)
------------------------------------------------------------
[  4] local 192.168.2.11 port 5001 connected with 192.168.2.20 port 11462
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  17.9 GBytes  15.4 Gbits/sec
^ I should point out, TrueNAS was reporting different TCP window sizes for each of these tests. Windows reported 208 KBytes, TrueNas reported 35 KBytes for the same test.

Two streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.11, TCP port 5001
TCP window size:  267 KByte (default)
------------------------------------------------------------
[ ID] Interval       Transfer     Bandwidth
[  2] 0.00-10.01 sec  11.7 GBytes  10.1 Gbits/sec
[  1] 0.00-10.01 sec  11.7 GBytes  10.1 Gbits/sec
[SUM] 0.00-10.00 sec  23.5 GBytes  20.2 Gbits/sec
Four streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.11, TCP port 5001
TCP window size: 35.0 KByte (default)
------------------------------------------------------------
[  1] local 192.168.2.20 port 41060 connected with 192.168.2.11 port 5001
[  3] local 192.168.2.20 port 34442 connected with 192.168.2.11 port 5001
[  4] local 192.168.2.20 port 51929 connected with 192.168.2.11 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3] 0.00-10.01 sec  5.36 GBytes  4.60 Gbits/sec
[  4] 0.00-10.01 sec  5.26 GBytes  4.52 Gbits/sec
[  2] 0.00-10.01 sec  5.34 GBytes  4.58 Gbits/sec
[  1] 0.00-10.01 sec  5.35 GBytes  4.59 Gbits/sec
[SUM] 0.00-10.00 sec  21.3 GBytes  18.3 Gbits/sec
Six streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.11, TCP port 5001
TCP window size: 35.0 KByte (default)
------------------------------------------------------------
[  4] local 192.168.2.20 port 42650 connected with 192.168.2.11 port 5001
[  5] local 192.168.2.20 port 54908 connected with 192.168.2.11 port 5001
[  6] local 192.168.2.20 port 11368 connected with 192.168.2.11 port 5001
[  1] local 192.168.2.20 port 30997 connected with 192.168.2.11 port 5001
[ ID] Interval       Transfer     Bandwidth
[  4] 0.00-10.01 sec  3.31 GBytes  2.85 Gbits/sec
[  1] 0.00-10.01 sec  2.96 GBytes  2.54 Gbits/sec
[  5] 0.00-10.01 sec  3.31 GBytes  2.84 Gbits/sec
[  2] 0.00-10.00 sec  3.29 GBytes  2.82 Gbits/sec
[  3] 0.00-10.01 sec  2.98 GBytes  2.55 Gbits/sec
[  6] 0.00-10.02 sec  3.31 GBytes  2.83 Gbits/sec
[SUM] 0.00-10.00 sec  19.2 GBytes  16.5 Gbits/sec
Sixteen streams:
Code:
------------------------------------------------------------
Client connecting to 192.168.2.11, TCP port 5001
TCP window size: 35.0 KByte (default)
------------------------------------------------------------
[  7] local 192.168.2.20 port 43752 connected with 192.168.2.11 port 5001
[  6] local 192.168.2.20 port 22694 connected with 192.168.2.11 port 5001
[  3] local 192.168.2.20 port 37012 connected with 192.168.2.11 port 5001
[  9] local 192.168.2.20 port 31210 connected with 192.168.2.11 port 5001
[ 10] local 192.168.2.20 port 10648 connected with 192.168.2.11 port 5001
[  8] local 192.168.2.20 port 11270 connected with 192.168.2.11 port 5001
tcp connect failed: Operation timed out
tcp connect failed: Operation timed out
tcp connect failed: Operation timed out
tcp connect failed: Operation timed out
tcp connect failed: Operation timed out
tcp connect failed: Operation timed out
[ ID] Interval       Transfer     Bandwidth
[  3] 0.00-10.02 sec  1.78 GBytes  1.52 Gbits/sec
[  2] 0.00-10.01 sec  1.81 GBytes  1.55 Gbits/sec
[  4] 0.00-10.01 sec  1.79 GBytes  1.54 Gbits/sec
[  9] 0.00-10.02 sec  1.79 GBytes  1.53 Gbits/sec
[  7] 0.00-10.02 sec  1.75 GBytes  1.50 Gbits/sec
[ 10] 0.00-10.02 sec  1.77 GBytes  1.52 Gbits/sec
[  8] 0.00-10.02 sec  1.82 GBytes  1.56 Gbits/sec
[  6] 0.00-10.02 sec  1.81 GBytes  1.55 Gbits/sec
[  1] 0.00-10.01 sec  1.80 GBytes  1.55 Gbits/sec
[  5] 0.00-10.01 sec  1.84 GBytes  1.58 Gbits/sec
[SUM] 0.00-10.00 sec  18.0 GBytes  15.4 Gbits/sec
As per my earlier results, once again, the connection to Windows barely eked out 20 Gbits/s. More importantly, running any -P 16 test guaranteed anywhere from five to ten streams completely timing out as above.

Honestly, I'm not well versed enough in this to know exactly what I'm seeing, but perhaps Windows is doing a terrible job of auto-adjusting the TCP window size? Seems as if this isn't entirely a Windows issue either, since Ubuntu managed to lose throughput given enough packets, but it at least managed not to completely time out.

-Kurt
 

pixelBit

Member
Jul 16, 2019
31
23
8
I experienced a similar issue on Windows 11 and I was able to narrow the problem down to using a third-party antivirus or software firewall such as ESET NOD32 and unfortunately this was the case with NetLimiter 4, too.

A clean install of Windows 11 with a few tools - running iperf, Ntttcp, ethr, etc.. upon installing NetLimiter 4 or a software firewall or antivirus would kill network throughput. Ultimately, I booted a system to Windows PE and ran the aforementioned tools and I was able to saturate the connections to spec.

I tested numerous systems and network adapters from 10G to 40G and got exact same results - killed my network performance to the tune of barely hitting 2.5G at times. It was a horrible problem that others have reported, too:

[KB7468] Network speed performance issues after installing ESET Server Security for Microsoft Windows Server

PSA: Antivirus software crushed my 10gbe throughput
 
Last edited:
  • Like
Reactions: cudak888

cudak888

New Member
May 27, 2022
12
0
1
I experienced a similar issue on Windows 11 and I was able to narrow the problem down to using a third-party antivirus or software firewall such as ESET NOD32 and unfortunately this was the case with NetLimiter 4, too.

A clean install of Windows 11 with a few tools - running iperf, Ntttcp, ethr, etc.. upon installing NetLimiter 4 or a software firewall or antivirus would kill network throughput. Ultimately, I booted a system to Windows PE and ran the aforementioned tools and I was able to saturate the connections to spec.

I tested numerous systems and network adapters from 10G to 40G and got exact same results - killed my network performance to the tune of barely hitting 2.5G at times. It was a horrible problem that others have reported, too:

[KB7468] Network speed performance issues after installing ESET Server Security for Microsoft Windows Server

PSA: Antivirus software crushed my 10gbe throughput
That's interesting, as I'm not running anything other than Windows Defender, and far as I know, SpyBot 2.9 doesn't scan inbound traffic (if I'm wrong, let me know).

I do believe I had Malwarebytes Anti Malware installed here at one time, but it is no longer installed. I used the Malwarebytes Support Tool (both full removal + Windows file restoration) to no avail after a reboot; same speeds.

I'll run iperf in WinPE, though I'm tempted to try a spare one-time clean Win 10 install from the same ISO, just out of curiosity. Will report back.

-Kurt
 

cudak888

New Member
May 27, 2022
12
0
1
Quick update: I tinkered around with WinPE on the ASUS box, but had limited success getting the NIC to play nice. Wound up throwing Win 10 on it anyway using a spare NVMe. Perfect speeds, not a problem.

Also - though this sounds ridiculously intuitive - I hadn't tried booting the HP Z8 into Safe Mode w/Networking. Did so, performed as it should with full read speeds.

Still haven't been able to pin down at all what's intercepting the traffic and making a nuisance of itself.

Incidentally, I installed the latest (4.5.10) version of MalwareBytes on the ASUS box, just to see if it would immediately result in a reduction of transfer speeds. No effect, speeds stayed where they should after an install and reboot, so that bit of software must have been fixed in the meantime.

-Kurt
 

cudak888

New Member
May 27, 2022
12
0
1
FYI, I think this is the same issue on Server 2019. Not 100% sure.


Haven't had any further luck yet other than to occasionally get full transfer speeds just before everything loads at startup. Also nuked Spybot with no change; meanwhile, the alternate box is running both SpyBot and MalwareBytes on Win10 without issue.

I did have one case where turning RSC off on the adapter seemed to do the trick briefly. Also, the other Win10 box had it off as well, though based on the links above, Wireshark might have done that when it was installed.

Any recommendations for a tool that detects specific programs interfering with transfers? At this point, I'm throwing darts.

-Kurt