Date: Wed, 30 Jul 1997 15:24:54 -0400 (EDT) From: Andrew Gallatin <gallatin@CS.Duke.EDU> To: Stefan Esser <se@FreeBSD.ORG> Cc: freebsd-current@FreeBSD.ORG Subject: Re: code talks: announcing EIDE bus master patches Message-ID: <199707301924.PAA08936@hurricane.cs.duke.edu> In-Reply-To: <19970729221036.52544@mi.uni-koeln.de> References: <19970729210723.18104@mi.uni-koeln.de> <199707291949.VAA00271@sos.freebsd.dk> <19970729221036.52544@mi.uni-koeln.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Stefan Esser writes: > > Yes, one thing that is often underestimated is the fact, > that while PIO mode transfers consume only a small fraction > of the cycles of a fast CPU, but they tend to consume them > exactly at the time, when the CPU is highly loaded anyway. Speaking of PIO vs. DMA, an interesting data point is the bandwidth differences between PIO & DMA. For example, on a 200Mhz P. Pro (Asus XP6NP5, Intel 82440FX chipset) we can use PIO to move an 8k chunks of memory to a PCI device(*) at a rate of 29.1 MB/sec, but using PIO for reads gives us bandwidth of only 8.1MB/sec. Other platforms (Intel Triton @ 13MB/sec) show similar results. However, using DMA we see b/w of 114.4MB/sec (host -> PCI device) and 121.5 MB/sec (PCI -> host memory). So.. if IDE disks can really supply data at > 8MB/sec, you may actually be running into a b/w limitation of PIO. (*) PCI device == a Myrinet M2F-PCI32 card. This is a programmable gigabit networking card. It has a 256k bank of SRAM on the card, and is very good for doing things like measuring PCI b/w. The tests were done from user space operating on mmap'ed device memory & a kernel allocated chunk of RAM to do DMA xfers to/from. It also runs IP traffic at better than 300Mb/sec. I suppose this is as good a time to ask as any: I have a FreeBSD driver 95% done for Myrinet cards such as this. Who can I talk to about the possibility of getting it committed to -current? There are some sticky issues that may prevent its inclusion (specifically GPL'ed libraries that are required to communicate w/the vendor supported "firmware" that runs on the card & which I cannot think of a clean way to build). Drew ------------------------------------------------------------------------------ Andrew Gallatin http://www.cs.duke.edu/~gallatin Duke University Email: gallatin@cs.duke.edu Department of Computer Science Phone: (919) 660-6590
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707301924.PAA08936>