[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20081031.011411.238617852.davem@davemloft.net>
Date: Fri, 31 Oct 2008 01:14:11 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: ilpo.jarvinen@...sinki.fi
Cc: zbr@...emap.net, netdev@...r.kernel.org, efault@....de,
mingo@...e.hu, a.p.zijlstra@...llo.nl, herbert@...dor.apana.org.au
Subject: Re: tbench wrt. loopback TSO
From: "Ilpo Järvinen" <ilpo.jarvinen@...sinki.fi>
Date: Tue, 28 Oct 2008 00:17:00 +0200 (EET)
> On Mon, 27 Oct 2008, Evgeniy Polyakov wrote:
>
> > That's why when I see modulo something screams inside me...
> > I used following patch (without goto in the tcp_tso_should_defer():
> >
> > diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
> > index e4c5ac9..8ee7597 100644
> > --- a/net/ipv4/tcp_output.c
> > +++ b/net/ipv4/tcp_output.c
> > @@ -1075,7 +1075,6 @@ unsigned int tcp_current_mss(struct sock *sk, int large_allowed)
> > tp->tcp_header_len);
> >
> > xmit_size_goal = tcp_bound_to_half_wnd(tp, xmit_size_goal);
> > - xmit_size_goal -= (xmit_size_goal % mss_now);
> > }
> > tp->xmit_size_goal = xmit_size_goal;
> >
> >
> > tso/gso on: 361.866 362.662
> > tso/gso off: 370.038 368.768
> >
> > So this is another improvement hidden and not accounted in the tso/gso stuff.
> > Another modulo sits in tcp_mss_split_point().
>
> I know it's there but it should occur not that often.
It happens every sendmsg() call, and all tbench does is small send,
small recv, repeat.
So with TSO on, a small increase in performance is no surprise, as
we will save some cycles often enough.
--
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