[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4E541302.2050007@intel.com>
Date: Tue, 23 Aug 2011 13:52:18 -0700
From: Alexander Duyck <alexander.h.duyck@...el.com>
To: Alexander Duyck <alexander.duyck@...il.com>
CC: David Miller <davem@...emloft.net>, bhutchings@...arflare.com,
jeffrey.t.kirsher@...el.com, netdev@...r.kernel.org,
gospo@...hat.com
Subject: Re: [net-next 03/10] ixgbe: Drop the TX work limit and instead just
leave it to budget
On 08/22/2011 09:04 PM, Alexander Duyck wrote:
> On Mon, Aug 22, 2011 at 4:40 PM, David Miller<davem@...emloft.net> wrote:
>> From: Alexander Duyck<alexander.h.duyck@...el.com>
>> Date: Mon, 22 Aug 2011 15:57:51 -0700
>>> The problem seemed to be present as long as I allowed the TX budget to
>>> be a multiple of the RX budget. The easiest way to keep things
>>> balanced and avoid allowing the TX from one CPU to overwhelm the RX on
>>> another was just to keep the budgets equal.
>> You're executing 10 or 20 cpu cycles after every 64 TX reclaims,
>> that's the only effect of these changes. That's not even long enough
>> for a cache line to transfer between two cpus.
> It sounds like I may not have been seeing this due to the type of
> workload I was focusing on. I'll try generating some data with pktgen
> and netperf tomorrow to see how this holds up under small packet
> transmit only traffic since those are the cases most likely to get
> into the state you mention.
>
> Also I would appreciate it if you had any suggestions on other
> workloads I might need to focus on in order to determine the impact of
> this change.
>
> Thanks,
>
> Alex
I found a reason to rewrite this. Basically this modification has a
negative impact in the case of multiple ports on a single CPU all
routing to the same port on the same CPU. It ends up making it so that
the transmit throughput is only (total CPU packets per second)/(number
of ports receiving on cpu). So on a system that can receive at 1.4Mpps
on a single core we end up seeing only a little over 350Kpps of transmit
when 4 ports are all receiving packets on the system.
I'll look at rewriting this. I'll probably leave the work limit
controlling things but lower it to a more reasonable value such as 1/2
to 1/4 of the ring size.
Thanks,
Alex
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists