From owner-freebsd-net@FreeBSD.ORG Sun Apr 3 07:27:58 2005 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A803B16A4CE for ; Sun, 3 Apr 2005 07:27:58 +0000 (GMT) Received: from silver.he.iki.fi (helenius.fi [193.64.42.241]) by mx1.FreeBSD.org (Postfix) with ESMTP id 635D243D7C for ; Sun, 3 Apr 2005 07:27:57 +0000 (GMT) (envelope-from pete@he.iki.fi) Received: from [193.64.42.134] (h86.vuokselantie10.fi [193.64.42.134]) by silver.he.iki.fi (8.13.1/8.11.4) with ESMTP id j337RtKg003474; Sun, 3 Apr 2005 10:27:55 +0300 (EEST) (envelope-from pete@he.iki.fi) Message-ID: <424F9B11.6090403@he.iki.fi> Date: Sun, 03 Apr 2005 10:28:17 +0300 From: Petri Helenius User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Chris Tracy References: <20050403011248.S72062@lunarlander.maxgigapop.net> In-Reply-To: <20050403011248.S72062@lunarlander.maxgigapop.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit cc: freebsd-net@freebsd.org Subject: Re: can't get linerate TCP iperf between two Intel PRO/1000 82544GC cards X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Apr 2005 07:27:58 -0000 Does somebody have the programming specs for the em chips? Despite of multiple contacts and promises Intel has been unable to produce them. Pete Chris Tracy wrote: > Hi, > > I have been attempting to get iperf to generate a line-rate TCP flow > (~989Mbps) across a GigE link but can only get a maximum of around > 912Mbps. > > The bottleneck appears to be on the sending side, as top shows the CPU > for the iperf process at 50% (machine is a dual Xeon 2.4GHz with SMP > and HTT enabled) and the WCPU column goes to 99%. > > Presumably the CPU is busy computing checksums, so I took a look at > if_em.c to find out more about what kind of hardware checksum > offloading features might be available, and I found this: > > if (adapter->hw.mac_type >= em_82543) { > if (ifp->if_capenable & IFCAP_TXCSUM) > ifp->if_hwassist = EM_CHECKSUM_FEATURES; > > I wasn't sure which chipset I had, so I checked the output of pciconf: > > # pciconf -v -l |grep 8254 > device = '82544GC Gigabit Ethernet Controller (LOM)' > > I then tried an ifconfig em0, and it indeed shows the rxcsum and > txcsum options listed in the output. However, executing something > like 'ifconfig em0 txcsum' doesn't seem to help with the CPU issue. > > I took a look at /usr/src/sys/dev/em/README and didn't see the GC > flavor of this card mentioned anywhere, nor any details or known > limitations with regard to checksum offloading. I'm assuming GC means > Gigabit Copper since these are the 1000bT versions. > > I also have some 82544EI/GC cards which I haven't gotten around to > testing yet because of a jumbo frame issue on one of the layer3 > devices in between the hosts with those cards. > > At this point, all that I can think of doing is to try and add some > debug statements to the driver so that I might be able to get a better > idea of what's going on with the hardware checksum...maybe it is > already offloading correctly and the CPU bottleneck is being caused by > something else? > > I can provide additional details if needed, but please include my > email in the reply as I'm not subscribed to the list. Any help would > be most appreciated. I've had no problems doing 989Mbps in Linux, but > I'd really prefer to run FreeBSD. > > Thanks, > -Chris > _______________________________________________ > 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"