Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758349AbYA3XX1 (ORCPT ); Wed, 30 Jan 2008 18:23:27 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754750AbYA3XXP (ORCPT ); Wed, 30 Jan 2008 18:23:15 -0500 Received: from trinity.phys.uwm.edu ([129.89.57.159]:60724 "EHLO trinity.phys.uwm.edu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754195AbYA3XXO (ORCPT ); Wed, 30 Jan 2008 18:23:14 -0500 Date: Wed, 30 Jan 2008 17:23:08 -0600 (CST) From: Bruce Allen X-X-Sender: ballen@trinity.phys.uwm.edu To: Stephen Hemminger cc: Linux Kernel Mailing List , netdev@vger.kernel.org Subject: Re: e1000 full-duplex TCP performance well below wire speed In-Reply-To: <20080130143335.7fc9ea21@deepthought> Message-ID: References: <20080130.055333.192844925.davem@davemloft.net> <20080130082136.1017631d@deepthought> <20080130143335.7fc9ea21@deepthought> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1597 Lines: 39 Hi Stephen, >>>> Indeed, we are not asking to see 1000 Mb/s. We'd be happy to see 900 >>>> Mb/s. >>>> >>>> Netperf is trasmitting a large buffer in MTU-sized packets (min 1500 >>>> bytes). Since the acks are only about 60 bytes in size, they should be >>>> around 4% of the total traffic. Hence we would not expect to see more >>>> than 960 Mb/s. >> >>> Don't forget the network overhead: http://sd.wareonearth.com/~phil/net/overhead/ >>> Max TCP Payload data rates over ethernet: >>> (1500-40)/(38+1500) = 94.9285 % IPv4, minimal headers >>> (1500-52)/(38+1500) = 94.1482 % IPv4, TCP timestamps >> >> Yes. If you look further down the page, you will see that with jumbo >> frames (which we have also tried) on Gb/s ethernet the maximum throughput >> is: >> >> (9000-20-20-12)/(9000+14+4+7+1+12)*1000000000/1000000 = 990.042 Mbps >> >> We are very far from this number -- averaging perhaps 600 or 700 Mbps. > That is the upper bound of performance on a standard PCI bus (32 bit). > To go higher you need PCI-X or PCI-Express. Also make sure you are really > getting 64-bit PCI, because I have seen some e1000 PCI-X boards that > are only 32bit. The motherboard NIC is in a PCI-e x1 slot. This has a maximum speed of 250 MB/s (2 Gb/s) in each direction. It should be a factor of 2 more interface speed than is needed. Cheers, Bruce -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/