mbox series

[net-next,0/7] ibmvnic RR performance improvements

Message ID 20240801212340.132607-1-nnac123@linux.ibm.com (mailing list archive)
Headers show
Series ibmvnic RR performance improvements | expand

Message

Nick Child Aug. 1, 2024, 9:23 p.m. UTC
Hello!

This patchset aims to increase the ibmvnic small packet request
response transaction rate.

When measuring transaction rate on several netperf tcp_rr connections,
a ~2x improvement can be observed! No regressions were seen when
performing other bw/latency tests.

The main points of improvement were from:
 - Patch 1 - request response tests will almost never fill a napi budget
             so wasting time replenishing every poll can be expensive
 - Patch 6 - Turns out that updating BQL completed bytes more than once per
             interrupt can be a really bad idea!

The final patch SHOULD be temporary, we are waiting for our FW teams to
clarify some documentation items. Within a few years that logic should
be replaced. In the meantime, it only effects non-GSO + CSO + !xmit_more
packets. There was no effect on performance from this patch.

Looking forward to any and all feedback!
Thanks,
  Nick Child

Nick Child (7):
  ibmvnic: Only replenish rx pool when resources are getting low
  ibmvnic: Use header len helper functions on tx
  ibmvnic: Reduce memcpys in tx descriptor generation
  ibmvnic: Remove duplicate memory barriers in tx
  ibmvnic: Introduce send sub-crq direct
  ibmvnic: Only record tx completed bytes once per handler
  ibmvnic: Perform tx CSO during send scrq direct

 drivers/net/ethernet/ibm/ibmvnic.c | 174 +++++++++++++++++------------
 1 file changed, 102 insertions(+), 72 deletions(-)