From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
To: Alexander Duyck <alexander.duyck@gmail.com>
Cc: Alexander Duyck <alexander.h.duyck@redhat.com>,
netdev@vger.kernel.org, intel-wired-lan@lists.osuosl.org
Subject: Re: [Intel-wired-lan] [PATCH] ixgbe: Limit lowest interrupt rate for adaptive interrupt moderation to 12K
Date: Wed, 02 Sep 2015 03:07:00 -0700 [thread overview]
Message-ID: <1441188420.2783.18.camel@intel.com> (raw)
In-Reply-To: <55E655A3.9010304@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2780 bytes --]
On Tue, 2015-09-01 at 18:49 -0700, Alexander Duyck wrote:
> On 07/30/2015 03:19 PM, Alexander Duyck wrote:
> > This patch updates the lowest limit for adaptive interrupt interrupt
> > moderation to roughly 12K interrupts per second.
> >
> > The way I came about reaching 12K as the desired interrupt rate is
> by
> > testing with UDP flows. Specifically I had a simple test that ran a
> > netperf UDP_STREAM test at varying sizes. What I found was as the
> packet
> > sizes increased the performance fell steadily behind until we were
> only
> > able to receive at ~4Gb/s with a message size of 65507. A bit of
> digging
> > found that we were dropping packets for the socket in the network
> stack,
> > and looking at things further what I found was I could solve it by
> increasing
> > the interrupt rate, or increasing the rmem_default/rmem_max. What I
> found was
> > that when the interrupt coalescing resulted in more data being
> processed
> > per interrupt than could be stored in the socket buffer we started
> losing
> > packets and the performance dropped. So I reached 12K based on the
> > following math.
> >
> > rmem_default = 212992
> > skb->truesize = 2994
> > 212992 / 2994 = 71.14 packets to fill the buffer
> >
> > packet rate at 1514 packet size is 812744pps
> > 71.14 / 812744 = 87.9us to fill socket buffer
> >
> > >From there it was just a matter of choosing the interrupt rate and
> > providing a bit of wiggle room which is why I decided to go with 12K
> > interrupts per second as that uses a value of 84us.
> >
> > The data below is based on VM to VM over a direct assigned ixgbe
> interface.
> > The test run was:
> > netperf -H <ip> -t UDP_STREAM"
> >
> > Socket Message Elapsed Messages CPU
> Service
> > Size Size Time Okay Errors Throughput Util
> Demand
> > bytes bytes secs # # 10^6bits/sec % SS
> us/KB
> > Before:
> > 212992 65507 60.00 1100662 0 9613.4 10.89
> 0.557
> > 212992 60.00 473474 4135.4 11.27
> 0.576
> >
> > After:
> > 212992 65507 60.00 1100413 0 9611.2 10.73
> 0.549
> > 212992 60.00 974132 8508.3 11.69
> 0.598
> >
> > Using bare metal the data is similar but not as dramatic as the
> throughput
> > increases from about 8.5Gb/s to 9.5Gb/s.
> >
> > Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
>
> Has there been any update on this patch? I submitted it just over a
> month ago now and it hasn't received any feedback. I was hoping this
> could be submitted before the merge window closes for net-next.
It will be in the next series I push later today.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2015-09-02 10:07 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-30 22:19 [PATCH] ixgbe: Limit lowest interrupt rate for adaptive interrupt moderation to 12K Alexander Duyck
2015-09-02 1:49 ` [Intel-wired-lan] " Alexander Duyck
2015-09-02 5:44 ` Hisashi T Fujinaka
2015-09-02 10:07 ` Jeff Kirsher [this message]
2015-09-10 19:49 ` Singh, Krishneil K
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=1441188420.2783.18.camel@intel.com \
--to=jeffrey.t.kirsher@intel.com \
--cc=alexander.duyck@gmail.com \
--cc=alexander.h.duyck@redhat.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=netdev@vger.kernel.org \
/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).