Date: Thu, 11 Nov 1999 18:16:16 -0700 (MST) From: "Kenneth D. Merry" <ken@kdm.org> To: shimon@simon-shapiro.org (Simon Shapiro) Cc: rjesup@wgate.com (Randell Jesup), freebsd-arch@freebsd.org Subject: Re: I/O Evaluation Questions (Long but interesting!) Message-ID: <199911120116.SAA30871@panzer.kdm.org> In-Reply-To: <382B52F9.2C6D1E00@simon-shapiro.org> from Simon Shapiro at "Nov 11, 1999 06:36:25 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
[ Simon: the "charset = " (i.e. nothing) line your mail makes my mailer barf. You may want to adjust your character set. ] Simon Shapiro wrote... > Randell Jesup wrote: > > Second, could they be (for large IO's) transferring directly > > into user memory, bypassing all buffers (I haven't really been following > > the discussion; a good trick is to do direct DMA into the destination > > buffer - it also allows you to use large commands to the drive (less > > command overhead). Saving a memory-to-memory copy counts at those speeds. > > This happens in FreeBSD on raw I/O. I belive some work was done > to do that on block i.o too (something to do with zero copy > in vm... I think you may get this behavior if you turn on the ENABLE_VFS_IOOPT option, and then 'sysctl -w vfs.ioopt=1'. It only works for page-sized and page-aligned buffers, though. (see sys/ufs/ufs/ufs_readwrite.c) I'm not sure how often that kicks in in normal operation. Someone else might know. > > Unlikely, though, and very tricky. (Interesting idea, though - > > pseudo-mmap.) They also could set up the DMA, and mark the pages in the > > page table so that you'll fault if you try to access them, and then undo > > the mark when the IO is done (or as each N pages of the IO is done make > > those N pages accessible). There are many cute tricks here... > > > > What hardware do you have that gives 100MB/s or more??? > > (bragging corner: 167 read, 138 write :-) DPT PM3755U2B with > 256MB of ECC cache in a Dell PowerEdge 1300/600. > FreeBSD RELENG_3, single CPU running. How can you get speeds like that with just a 32-bit PCI bus? The specs for the PowerEdge 1300 say it has 5 32-bit PCI slots: http://www.dell.com/us/en/biz/products/spec_wrkgp_1300_servers.htm Ken -- Kenneth Merry ken@kdm.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199911120116.SAA30871>