Netdev List
 help / color / mirror / Atom feed
* AX88179_178A USB3 ethernet adapter performance issue
@ 2014-02-06 14:33 Daniel J Blueman
  2014-02-06 15:39 ` David Laight
  0 siblings, 1 reply; 4+ messages in thread
From: Daniel J Blueman @ 2014-02-06 14:33 UTC (permalink / raw)
  To: Freddy Xin; +Cc: Netdev

Hi Freddy et al,

I'm experiencing poor network performance using an ASIX AX88179_178A
USB3 to ethernet adapter using any recent linux kernel (eg 3.11),
using an Intel XHCI USB3 controller.

Running iperf tests between one host with a gigabit PCIe NIC, via a
gigabit switch to the other host with various interfaces:

PCIe bcm957762: send 818Mb/s, recv 910Mb/s
USB2 smsc75xx: send 341Mb/s, recv 330Mb/s
USB3 ax88179_178a: send 347Mb/s, recv 18.7Mb/s

Are you able to reproduce the same 19Mb/s receive rate there?

Many thanks,
  Daniel
-- 
Daniel J Blueman

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: AX88179_178A USB3 ethernet adapter performance issue
  2014-02-06 14:33 AX88179_178A USB3 ethernet adapter performance issue Daniel J Blueman
@ 2014-02-06 15:39 ` David Laight
       [not found]   ` <063D6719AE5E284EB5DD2968C1650D6D0F6B9A21-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: David Laight @ 2014-02-06 15:39 UTC (permalink / raw)
  To: 'Daniel J Blueman', Freddy Xin, linux-usb@vger.kernel.org,
	'Sarah Sharp', Greg Kroah-Hartman
  Cc: Netdev

From: Daniel J Blueman
> Hi Freddy et al,

I've copied this to linux-usb.

> I'm experiencing poor network performance using an ASIX AX88179_178A
> USB3 to ethernet adapter using any recent linux kernel (eg 3.11),
> using an Intel XHCI USB3 controller.

There a several problems with the xhci driver that show up when
trying to use the ax88179_178a driver.
Unfortunately some of the fixes have caused regressions on other
host controllers with disk transfers.
The patches may, or may not, be present in your kernel.
The 'scatter-gather' support that is used in order to enable TSO
is particularly good at exercising the buggy code paths.

> Running iperf tests between one host with a gigabit PCIe NIC, via a
> gigabit switch to the other host with various interfaces:
> 
> PCIe bcm957762: send 818Mb/s, recv 910Mb/s
> USB2 smsc75xx: send 341Mb/s, recv 330Mb/s
> USB3 ax88179_178a: send 347Mb/s, recv 18.7Mb/s
> 
> Are you able to reproduce the same 19Mb/s receive rate there?

It might be that you are only actually running at USB2 speeds
(check with lsusb -t).

I have seem line rate Ge from my ax88179 card, but only with a
patched kernel.

	David

> 
> Many thanks,
>   Daniel
> --
> Daniel J Blueman
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: AX88179_178A USB3 ethernet adapter performance issue
       [not found]   ` <063D6719AE5E284EB5DD2968C1650D6D0F6B9A21-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
@ 2014-02-06 17:12     ` Sarah Sharp
  2014-02-06 17:17       ` David Laight
  0 siblings, 1 reply; 4+ messages in thread
From: Sarah Sharp @ 2014-02-06 17:12 UTC (permalink / raw)
  To: David Laight
  Cc: 'Daniel J Blueman', Freddy Xin,
	linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Greg Kroah-Hartman, Netdev

On Thu, Feb 06, 2014 at 03:39:02PM +0000, David Laight wrote:
> From: Daniel J Blueman
> > Hi Freddy et al,
> 
> I've copied this to linux-usb.
> 
> > I'm experiencing poor network performance using an ASIX AX88179_178A
> > USB3 to ethernet adapter using any recent linux kernel (eg 3.11),
> > using an Intel XHCI USB3 controller.
> 
> There a several problems with the xhci driver that show up when
> trying to use the ax88179_178a driver.
> Unfortunately some of the fixes have caused regressions on other
> host controllers with disk transfers.
> The patches may, or may not, be present in your kernel.
> The 'scatter-gather' support that is used in order to enable TSO
> is particularly good at exercising the buggy code paths.

Scatter gather was not added until 3.12.  That does not explain the
issues with a 3.11 kernel.  (Unless we're hitting the 64-KB boundary
corner case a lot in 3.11.)

> > Running iperf tests between one host with a gigabit PCIe NIC, via a
> > gigabit switch to the other host with various interfaces:
> > 
> > PCIe bcm957762: send 818Mb/s, recv 910Mb/s
> > USB2 smsc75xx: send 341Mb/s, recv 330Mb/s
> > USB3 ax88179_178a: send 347Mb/s, recv 18.7Mb/s
> > 
> > Are you able to reproduce the same 19Mb/s receive rate there?

Which kernel are these numbers for?

Any chance you can test this adapter on Windows?  I would be interested
to see whether the send and recv numbers are also asymmetrical there.

> It might be that you are only actually running at USB2 speeds
> (check with lsusb -t).
> 
> I have seem line rate Ge from my ax88179 card, but only with a
> patched kernel.

David, did you mean you have the same line rate as Daniel?

Sarah Sharp
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: AX88179_178A USB3 ethernet adapter performance issue
  2014-02-06 17:12     ` Sarah Sharp
@ 2014-02-06 17:17       ` David Laight
  0 siblings, 0 replies; 4+ messages in thread
From: David Laight @ 2014-02-06 17:17 UTC (permalink / raw)
  To: 'Sarah Sharp'
  Cc: 'Daniel J Blueman', Freddy Xin, linux-usb@vger.kernel.org,
	Greg Kroah-Hartman, Netdev

From: Sarah Sharp
> > I have seem line rate Ge from my ax88179 card, but only with a
> > patched kernel.
> 
> David, did you mean you have the same line rate as Daniel?

No I meant I've seen it saturate a Ge link (with sufficiently large frames).

With very small frames the tx rate gets limited to a nice round number.
Possibly because the usb message rate limit.
It is high enough that it really doesn't matter, the code could put multiple
frames in a single URB, but I'm not sure the NAPI processing loop makes that
easy.

The receive side will run at a higher packet rate.

	David

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-02-06 17:18 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-06 14:33 AX88179_178A USB3 ethernet adapter performance issue Daniel J Blueman
2014-02-06 15:39 ` David Laight
     [not found]   ` <063D6719AE5E284EB5DD2968C1650D6D0F6B9A21-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
2014-02-06 17:12     ` Sarah Sharp
2014-02-06 17:17       ` David Laight

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox