linux/drivers/net/ixgbe
Alexander Duyck 905e4a4163 ixgbe: cleanup flow director hash computation to improve performance
This change cleans up the layout of the flow director data, and the
algorithm used to calculate the hash resulting in a 35x / 3500% performance
increase versus the old flow director hash computation.  The overall effect
is only a 1% increase in transactions per second though due to the fact
that only 1 packet in 20 are actually hashed upon.

TCP_RR before:
Socket Size   Request  Resp.   Elapsed  Trans.
Send   Recv   Size     Size    Time     Rate
bytes  Bytes  bytes    bytes   secs.    per sec

16384  87380  1        1       60.00    23059.27
16384  87380

TCP_RR after:
Socket Size   Request  Resp.   Elapsed  Trans.
Send   Recv   Size     Size    Time     Rate
bytes  Bytes  bytes    bytes   secs.    per sec

16384  87380  1        1       60.00    23239.98
16384  87380

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-01-09 23:44:11 -08:00
..
ixgbe_82598.c ixgbe: make silicon specific functions generic 2010-11-16 19:27:15 -08:00
ixgbe_82599.c ixgbe: cleanup flow director hash computation to improve performance 2011-01-09 23:44:11 -08:00
ixgbe_common.c ixgbe: Add anti-spoofing feature support 2010-12-24 21:41:06 -08:00
ixgbe_common.h ixgbe: Add anti-spoofing feature support 2010-12-24 21:41:06 -08:00
ixgbe_dcb_82598.c ixgbe: DCB set PFC high and low water marks per data sheet specs 2010-11-16 19:26:44 -08:00
ixgbe_dcb_82598.h ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_dcb_82599.c ixgbe: DCB set PFC high and low water marks per data sheet specs 2010-11-16 19:26:44 -08:00
ixgbe_dcb_82599.h ixgbe: DCB, fix TX hang occurring in stress condition with PFC 2010-10-28 10:19:00 -07:00
ixgbe_dcb_nl.c ixgbe: add support for x540 MAC 2010-11-16 19:27:17 -08:00
ixgbe_dcb.c ixgbe: add support for x540 MAC 2010-11-16 19:27:17 -08:00
ixgbe_dcb.h ixgbe: DCB: credit max only needs to be gt TSO size for 82598 2010-11-16 19:26:45 -08:00
ixgbe_ethtool.c ixgbe: cleanup flow director hash computation to improve performance 2011-01-09 23:44:11 -08:00
ixgbe_fcoe.c ixgbe: make sure FCoE DDP user buffers are really released by the HW 2010-11-16 19:27:14 -08:00
ixgbe_fcoe.h ixgbe: add a refcnt when turning on/off FCoE offload capability 2010-10-21 03:55:23 -07:00
ixgbe_main.c ixgbe: cleanup flow director hash computation to improve performance 2011-01-09 23:44:11 -08:00
ixgbe_mbx.c ixgbe: Add SR-IOV feature support to X540 2010-12-24 21:40:32 -08:00
ixgbe_mbx.h ixgbe: make silicon specific functions generic 2010-11-16 19:27:15 -08:00
ixgbe_phy.c ixgbe: fix X540 phy id to correct value 2010-12-10 22:12:46 -08:00
ixgbe_phy.h ixgbe: add MAC and PHY support for x540 2010-11-16 19:27:16 -08:00
ixgbe_sriov.c ixgbe: Add anti-spoofing feature support 2010-12-24 21:41:06 -08:00
ixgbe_sriov.h ixgbe: update copyright info 2010-10-21 03:55:21 -07:00
ixgbe_type.h ixgbe: cleanup flow director hash computation to improve performance 2011-01-09 23:44:11 -08:00
ixgbe_x540.c ixgbe: Add SR-IOV feature support to X540 2010-12-24 21:40:32 -08:00
ixgbe.h ixgbe: cleanup flow director hash computation to improve performance 2011-01-09 23:44:11 -08:00
Makefile ixgbe: add MAC and PHY support for x540 2010-11-16 19:27:16 -08:00