From owner-freebsd-hackers Sun Mar 14 12:30: 1 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from skynet.ctr.columbia.edu (skynet.ctr.columbia.edu [128.59.64.70]) by hub.freebsd.org (Postfix) with SMTP id DE54B14E8F for ; Sun, 14 Mar 1999 12:29:55 -0800 (PST) (envelope-from wpaul@skynet.ctr.columbia.edu) Received: (from wpaul@localhost) by skynet.ctr.columbia.edu (8.6.12/8.6.9) id PAA24852 for hackers@freebsd.org; Sun, 14 Mar 1999 15:36:24 -0500 From: Bill Paul Message-Id: <199903142036.PAA24852@skynet.ctr.columbia.edu> Subject: Re: Fifabit ethernet -- what am I doing wrong? To: hackers@freebsd.org Date: Sun, 14 Mar 1999 15:36:23 -0500 (EST) X-Mailer: ELM [version 2.4 PL24] Content-Type: text Content-Length: 1985 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Okay, here's an update. I've been reading all the replies to this thread, but it turns out that my main problem is that, as expected, I was screwing something up. The Tigon has a PCI state register which lets you configure several aspects operation. Two of the parameters are PCI read max and PCI write max, which force termination of PCI reads or writes at a specified boundaries 4 bytes, 16, 32, 64, 128, 256, 1K. I had originally set the read and write max values for 32. It turns out that disabling these settings (by making them 0) yields _much_ better performance. After fixing that, I ran into another situation where I kept filling up the transmit ring (or rather, the NIC wasn't emptying the transmit ring fast enough). Normally the Tigon has both the PCI read and write DMA channels active at the same time, but you can force only one to be active at a time by setting a bit in the operating mode register. The manual recommends _not_ doing this, but setting it yielded yet another jump in performance. Right now I can transmit UDP packets at around 55MB/sec with the normal MTU and can get 91MB/sec by setting the MTU to 9000 (using jumbo frames). TCP speed has improved too, but not quite so much as I expected (I can get 40MB/sec with a window size of 64K and normal MTU, 66MB/sec with jumbo frames). I still need to experiment with the various tuning options though. I also haven't really tried checksum offloading yet. -Bill -- ============================================================================= -Bill Paul (212) 854-6020 | System Manager, Master of Unix-Fu Work: wpaul@ctr.columbia.edu | Center for Telecommunications Research Home: wpaul@skynet.ctr.columbia.edu | Columbia University, New York City ============================================================================= "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness" ============================================================================= To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message