Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Jul 2014 22:09:13 -0400 (EDT)
From:      Rick Macklem <rmacklem@uoguelph.ca>
To:        "Russell L. Carter" <rcarter@pinyon.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: NFS client READ performance on -current
Message-ID:  <509953671.6648047.1404353353654.JavaMail.root@uoguelph.ca>
In-Reply-To: <53B4A605.8000604@pinyon.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Russell L. Carter wrote:
> 
> 
> On 07/02/14 17:17, Michael Sierchio wrote:
> > sysctl net.inet.tcp.tso=0
> 
> Woot!  2.7MB/s -> 76MB/s
> 
> Is this a FAQ somewhere?  I spent a long time looking
> today and didn't find it (I do recall seeing a mention
> of TSO but not seeing how to do it or that it fixed
> the problem)
> 
Unfortunately, this isn't good news for me. I had thought the
worst of the TSO related problems had been resolved in head.
The one I knew about was a case where a read/write just under
64K would result in a TSO segment (including ethernet header)
just over 64K (which can't fit in 32 mbuf clusters, while 32
is the limit for transmit segments for some TSO enabled interfaces).
I think this is fixed in head by r264630, which reduces the maximum
tso segment length by a small amount.

Admittedly, if the network interface is limited to less than 35
transmit segments and does not use m_defrag() to compact the TSO
segment into 32mbuf clusters, it would still be broken. The
m_defrag() calls will result in overhead, but I don't think they
would cause that much effect.

Could you please post the dmesg stuff for the network interface,
so I can tell what driver is being used? I'll take a look at it,
in case it needs to be changed to use m_defrag().

Thanks for letting us know this fixed the problem, rick

> On the second suggestion:
> 
> root@feyerabend> sysctl -a | grep dev.em | grep enable_
> root@feyerabend>
> 
> No problem, though.  76MB/s is A-OK.
> 
> Thanks!  I'm very happy now.
> 
> Russell
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to
> "freebsd-net-unsubscribe@freebsd.org"
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?509953671.6648047.1404353353654.JavaMail.root>