From: "Michael S. Tsirkin" <mst@redhat.com>
To: Jason Wang <jasowang@redhat.com>
Cc: Willem de Bruijn <willemdebruijn.kernel@gmail.com>,
netdev@vger.kernel.org, davem@davemloft.net,
Willem de Bruijn <willemb@google.com>
Subject: Re: [PATCH net-next] virtio_net: enable napi_tx by default
Date: Fri, 14 Jun 2019 02:00:10 -0400 [thread overview]
Message-ID: <20190614013506-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <c43051c5-144a-5aa4-2387-8fb42442f455@redhat.com>
On Fri, Jun 14, 2019 at 11:28:59AM +0800, Jason Wang wrote:
>
> On 2019/6/14 上午12:24, Willem de Bruijn wrote:
> > From: Willem de Bruijn <willemb@google.com>
> >
> > NAPI tx mode improves TCP behavior by enabling TCP small queues (TSQ).
> > TSQ reduces queuing ("bufferbloat") and burstiness.
> >
> > Previous measurements have shown significant improvement for
> > TCP_STREAM style workloads. Such as those in commit 86a5df1495cc
> > ("Merge branch 'virtio-net-tx-napi'").
> >
> > There has been uncertainty about smaller possible regressions in
> > latency due to increased reliance on tx interrupts.
> >
> > The above results did not show that, nor did I observe this when
> > rerunning TCP_RR on Linux 5.1 this week on a pair of guests in the
> > same rack. This may be subject to other settings, notably interrupt
> > coalescing.
> >
> > In the unlikely case of regression, we have landed a credible runtime
> > solution. Ethtool can configure it with -C tx-frames [0|1] as of
> > commit 0c465be183c7 ("virtio_net: ethtool tx napi configuration").
> >
> > NAPI tx mode has been the default in Google Container-Optimized OS
> > (COS) for over half a year, as of release M70 in October 2018,
> > without any negative reports.
> >
> > Link: https://marc.info/?l=linux-netdev&m=149305618416472
> > Link: https://lwn.net/Articles/507065/
> > Signed-off-by: Willem de Bruijn <willemb@google.com>
> >
> > ---
> >
> > now that we have ethtool support and real production deployment,
> > it seemed like a good time to revisit this discussion.
>
>
> I agree to enable it by default. Need inputs from Michael. One possible
> issue is we may get some regression on the old machine without APICV, but
> consider most modern CPU has this feature, it probably doesn't matter.
>
> Thanks
>
Right. If the issue does arise we can always add e.g. a feature flag
to control the default from the host.
> >
> > ---
> > drivers/net/virtio_net.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
> > index 0d4115c9e20b..4f3de0ac8b0b 100644
> > --- a/drivers/net/virtio_net.c
> > +++ b/drivers/net/virtio_net.c
> > @@ -26,7 +26,7 @@
> > static int napi_weight = NAPI_POLL_WEIGHT;
> > module_param(napi_weight, int, 0444);
> > -static bool csum = true, gso = true, napi_tx;
> > +static bool csum = true, gso = true, napi_tx = true;
> > module_param(csum, bool, 0444);
> > module_param(gso, bool, 0444);
> > module_param(napi_tx, bool, 0644);
next prev parent reply other threads:[~2019-06-14 6:00 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-13 16:24 [PATCH net-next] virtio_net: enable napi_tx by default Willem de Bruijn
2019-06-14 3:28 ` Jason Wang
2019-06-14 6:00 ` Michael S. Tsirkin [this message]
2019-06-14 7:01 ` Jason Wang
2019-06-14 5:35 ` Michael S. Tsirkin
2019-06-15 2:34 ` David Miller
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=20190614013506-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=davem@davemloft.net \
--cc=jasowang@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=willemb@google.com \
--cc=willemdebruijn.kernel@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.