From: Florian Fainelli <f.fainelli@gmail.com>
To: Tal Gilboa <talgi@mellanox.com>, netdev@vger.kernel.org
Cc: davem@davemloft.net, jaedon.shin@gmail.com, pgynther@google.com,
opendmb@gmail.com, michael.chan@broadcom.com, gospo@broadcom.com,
saeedm@mellanox.com
Subject: Re: [PATCH net-next 0/2] net: broadcom: Adaptive interrupt coalescing
Date: Mon, 26 Mar 2018 15:29:08 -0700 [thread overview]
Message-ID: <3bacf19a-ae05-0410-f276-2b928b826af7@gmail.com> (raw)
In-Reply-To: <4625ee80-9588-e39c-5add-3c57432c1141@gmail.com>
On 03/26/2018 03:04 PM, Florian Fainelli wrote:
> On 03/26/2018 02:16 PM, Tal Gilboa wrote:
>> On 3/23/2018 4:19 AM, Florian Fainelli wrote:
>>> Hi all,
>>>
>>> This patch series adds adaptive interrupt coalescing for the Gigabit
>>> Ethernet
>>> drivers SYSTEMPORT and GENET.
>>>
>>> This really helps lower the interrupt count and system load, as
>>> measured by
>>> vmstat for a Gigabit TCP RX session:
>>
>> I don't see an improvement in system load, the opposite - 42% vs. 100%
>> for SYSTEMPORT and 85% vs. 100% for GENET. Both with the same bandwidth.
>
> Looks like I did not extract the correct data the load could spike in
> both cases (with and without net_dim) up to 100, but averaged over the
> transmission I see the following:
>
> GENET without:
> 1 0 0 1169568 0 25556 0 0 0 0 130079 62795 2
> 86 13 0 0
>
> GENET with:
> 1 0 0 1169536 0 25556 0 0 0 0 10566 10869 1
> 21 78 0 0
>
>> Am I missing something? Talking about bandwidth, I would expect 941Mb/s
>> (assuming this is TCP over IPv4). Do you know why the reduced interrupt
>> rate doesn't improve bandwidth?
>
> I am assuming that this comes down to a latency, still capturing some
> pcap files to analyze the TCP session with wireshark and see if that is
> indeed what is going on. The test machine is actually not that great
>
>> Also, any effect on the client side (you
>> mentioned enabling TX moderation for SYSTEMPORT)?
>
> Yes, on SYSTEMPORT, being the TCP IPv4 client, I have the following:
>
> SYSTEMPORT without:
> 2 0 0 191428 0 25748 0 0 0 0 86254 264 0 41
> 59 0 0
>
> SYSTEMPORT with:
> 3 0 0 190176 0 25748 0 0 0 0 45485 31332 0
> 100 0 0 0
>
> I don't get top to agree with these load results though but it looks
> like we just have the CPU spinning more, does not look like a win.
The problem appears to be the timeout selection on TX, ignoring it
completely allows us to keep the load average down while maintaining the
bandwidth. Looks like NAPI on TX already does a good job, so interrupt
mitigation on TX is not such a great idea actually...
Also, doing UDP TX tests shows that we can lower the interrupt count by
setting an appropriate tx-frames (as expected), but we won't be lowering
the CPU load since that is inherently a CPU intensive work. Past
tx-frames=64, the bandwidth completely drops because that would be 1/2
of the ring size.
--
Florian
next prev parent reply other threads:[~2018-03-26 22:29 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-23 1:19 [PATCH net-next 0/2] net: broadcom: Adaptive interrupt coalescing Florian Fainelli
2018-03-23 1:19 ` [PATCH net-next 1/2] net: systemport: Implement adaptive " Florian Fainelli
2018-03-26 21:22 ` Tal Gilboa
2018-03-26 21:36 ` Florian Fainelli
2018-03-26 23:07 ` Tal Gilboa
2018-03-23 1:19 ` [PATCH net-next 2/2] net: bcmgenet: Add support for adaptive RX coalescing Florian Fainelli
2018-03-26 21:23 ` Tal Gilboa
2018-03-26 0:49 ` [PATCH net-next 0/2] net: broadcom: Adaptive interrupt coalescing David Miller
2018-03-26 21:16 ` Tal Gilboa
2018-03-26 22:04 ` Florian Fainelli
2018-03-26 22:29 ` Florian Fainelli [this message]
2018-03-26 23:21 ` Tal Gilboa
2018-03-26 23:40 ` Florian Fainelli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3bacf19a-ae05-0410-f276-2b928b826af7@gmail.com \
--to=f.fainelli@gmail.com \
--cc=davem@davemloft.net \
--cc=gospo@broadcom.com \
--cc=jaedon.shin@gmail.com \
--cc=michael.chan@broadcom.com \
--cc=netdev@vger.kernel.org \
--cc=opendmb@gmail.com \
--cc=pgynther@google.com \
--cc=saeedm@mellanox.com \
--cc=talgi@mellanox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).