Date: Mon, 14 Sep 2009 12:37:22 -0700 From: Pyun YongHyeon <pyunyh@gmail.com> To: freebsd-usb@FreeBSD.org Subject: CFT: axe(4) performance patch Message-ID: <20090914193722.GD1155@michelle.cdnetworks.com>
next in thread | raw e-mail | index | archive | help
Hi, I submitted axe(4) performance patch to Hans and he committed the patch to P4. http://perforce.freebsd.org/chv.cgi?CH=168457 The patch fixes two issues, lots of Rx errors seen under high network load and poor Rx performance. The Rx error was introduced in new USB stack conversion and it was not spotted until this time. For better Rx performance, the patch increases Rx maximum burst size to 16384 from 2048 for AX88178 and AX88772. Now I can see dramatic Rx performance boost from 50Mbps to 220Mbps on AX88178. AX88178 data sheet clearly indicates the default burst size is 16384 for maximum performance. But I don't know whether it breaks AX88772 fast ethernet controller. Now vendor's site requires valid account to download AX88772 data sheet so I can't verify that. If you have AX88772 or AX88178 please give it try and let us know how it goes. Since all USB ethernet controllers are poorly designed to save money and ASIX USB ether controller requires copy operation for every received frames(actually it's much much worse than rl(4) hardwares), you should have fast system to achieve maximum speed. I see constant Rx 220Mbps for various packet sizes(from 64 bytes to MTU sized bytes) on my 2.8GHz C2D. I don't know 220Mbps is the maximum speed the controller can achieve but I never seen these numbers on any USB ethernet drivers on FreeBSD.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090914193722.GD1155>