Intel® Ethernet 600 Series
Linux Performance Tuning Guide
Ethernet Products Group (EPG)
netperf
The netperf tool is a strong choice for both throughput and latency testing.
- The TCP_STREAM test in netperf measures the throughput capabilities of the device.
Server command example:
netserver Client command example:
netperf -t TCP_STREAM -l 30 -H <serverIP>
- The TCP_RR test in netperf returns latency as transactions per second. This is a round-trip value. Use the
-T x,x option, wherex is a CPU local to the device.One-way latency can be calculated using:
Latency (usec) = (0.5/[Transactions/sec])*1,000,000 Server command example:
netserver Client command example:
netperf -t TCP_RR -l 30 -H <serverIP> -T x,x Example: netperf -t TCP_RR -H <serverIP> -T 8,12 8 ==> Pin the client-side netperf process to CPU 8 12 ==> Request the server-side netserver process to run on CPU 12
- To start multiple instances or threads of netperf, use a for-loop to map threads to TCP ports and run netperf in the background using
& to create multiple parallel processes. Server command example, start 8 threads:Server command example, start 8 threads:
for i in {0..7}; do netserver -L $serverIP -p 520$i & done Client command example, start 8 threads:
for i in {0..7}; do netperf -H $serverIP -p 520$i -t TCP_STREAM -l 30 & done