On 12/05/2012 08:30 PM, Ben Greear wrote: > I'm curious if/how I can set the number of tx/rx queues (or otherwise force > all > pkts to be received in a single queue) in the ixgbe driver. I'm using > 3.5.7+ kernel. > > Now, one might ask why? > > I have a bridging/network-impairment module that basically grabs all packets > from > a network device, puts them in a single queue (can't have re-ordering), > and then transmits them later on a different port. > > When testing at 10G speeds, the processor the impairment module runs on > and the processor the NICs are bound to matters quite a bit. I'm using > an E5 processor, 4 cores, 4 hyper threads. I disable irqbalance for the > testing described here. > > If I bind eth2 IRQs to processor 0x10 and eth3 to 0x20, then I can get 9.8Gbps > bi-directional throughput (ie, basically line speed) when the impairment > module is bound to cpu 1, 2, or 3. I only get about 7Gbps on cpu 0, for > whatever reason. But, there is a catch. In my initial testing, I used > pktgen with fixed values (ie, same source/dest addresses for every packet). > I got to wondering about rx-queues, so I changed pktgen to generate > millions of different destination IPs. Under this load, the system > works much harder, and can only handle about 9Gbps throughput. Since I > had pinned all irqs (all tx/rx queues) to the same processor, I didn't > expect that spreading the packets among various rx queues would actually > make a difference, but it does, as far as I can tell. > > So, to investigate this further, I want to try configuring the NIC to only > use one rx queue. It should be sufficient to just disable whatever logic > the NIC uses to steer packets in one queue or another, but from what > I can tell, ethtool cannot change this for the ixgbe driver. > > Thanks, > Ben >
Ben, What part are you using? If it is an 82599 you might be able to enable ntuple filtering and just bind all traffic from a given protocol such as tcpv4 to a specific queue. The only limitation is that the packets being received cannot be fragmented. If they are then the flow director filter will not filter the frame. Thanks, Alex ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ E1000-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
