Date: Thu, 12 May 2011 20:03:39 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: Bob Friesenhahn <bfriesen@simple.dallas.tx.us> Cc: freebsd-fs@freebsd.org Subject: Re: ZFS: How to enable cache and logs. Message-ID: <921935873.267812.1305245019197.JavaMail.root@erie.cs.uoguelph.ca> In-Reply-To: <alpine.GSO.2.01.1105121805500.8019@freddy.simplesystems.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Thu, 12 May 2011, Rick Macklem wrote: > >> The large write feature of the ZIL is a reason why we should > >> appreciate modern NFS's large-write capability and avoid anchient > >> NFS. > >> > > The size of a write for the new FreeBSD NFS server is limited to > > MAX_BSIZE. It is currently 64K, but I would like to see it much > > larger. > > I am going to try increasing MAX_BSIZE soon, to see what happens. > > Zfs would certainly appreciate 128K since that is its default block > size. When existing file content is overwritten, writing in properly > aligned 128K blocks is much faster due to ZFS's COW algorithm and not > needing to read the existing block. With a partial "overwrite", if > the existing block is not already cached in the ARC, then it would > need to be read from underlying store before the replacement block can > be written. This effect becomes readily apparent in benchmarks. In > my own benchmarking I have found that 128K is sufficient and using > larger multiples of 128K does not obtain much more performance. > > When creating a file from scratch, zfs performs well for async writes > if a process writes data smaller than 128K. That might not be the > case for sync writes. > Yep, I think sizes greater than 128K might only benefit WAN connections with a larger bandwidth * delay product. It also helps to find "not so great" network interfaces/drivers. When I used 128K on the Mac OS X port, it worked great for some Macs and horribly for others. Some Macs would drop packets when they would see a burst of read traffic (the Mac was a client and the server was Solaris10, which handles NFS read/write sizes up to 1Mbyte) and wouldn't perform well above 32Kbytes (for a now rather old port to Leopard). rick
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?921935873.267812.1305245019197.JavaMail.root>