Skip to content

Optimizing pktgen for single CPU performance

Jesper Dangaard Brouer netdev 2 versions – In review

Get series with b4
b4 am 20140626111549.23576.90201.stgit@dragon

Versions newest first · linked by author and title

  1. v2 Latest3 patches 1 replyIn review
  2. v15 patches 11 repliesSuperseded

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3pktgen: document tuning for max NIC performanceDocumentation/networking/pktgen.txt+28 -00 replies
2/3pktgen: avoid expensive set_current_state() call in loopnet/core/pktgen.c+3 -60 replies
3/3pktgen: RCU-ify "if_list" to remove lock in next_to_run()net/core/pktgen.c+52 -490 replies

Reviews trailers per patch

1 of 3 patches has a Reviewed-by or Acked-by.

PatchFlorian Westphal
1/3
2/3
3/3R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v2 thread

Cover letter [net-next PATCH V2 0/3] Optimizing pktgen for single CPU performance

This series focus on optimizing "pktgen" for single CPU performance.

V2-series:
- Removed some patches
- Doc real reason for TX ring buffer filling up

NIC tuning for pktgen:
http://netoptimizer.blogspot.dk/2014/06/pktgen-for-network-overload-testing.html

General overload setup according to:
http://netoptimizer.blogspot.dk/2014/04/basic-tuning-for-network-overload.html

Hardware:
System: CPU E5-2630
NIC: Intel ixgbe/82599 chip

Testing done with net-next git tree on top of
commit 6623b41944 ("Merge branch 'master' of...jkirsher/net-next")

Pktgen script exercising race condition:
https://github.com/netoptimizer/network-testing/blob/master/pktgen/unit_test01_race_add_rem_device_loop.sh

Tool for measuring LOCK overhead:
https://github.com/netoptimizer/network-testing/blob/master/src/overhead_cmpxchg.c

---

Jesper Dangaard Brouer (3):
pktgen: RCU-ify "if_list" to remove lock in next_to_run()
pktgen: avoid expensive set_current_state() call in loop
pktgen: document tuning for max NIC performance

 Documentation/networking/pktgen.txt |   28 +++++++++
 net/core/pktgen.c                   |  110 ++++++++++++++++++-----------------
 2 files changed, 83 insertions(+), 55 deletions(-)