On Fri, Jun 13, 2008 at 6:17 PM, Bob Friesenhahn <[EMAIL PROTECTED]> wrote: > As a followup, I see that there is an optional posix_fallocate() > function defined in the POSIX standard > (http://www.opengroup.org/onlinepubs/009695399/functions/posix_fallocate.html) > With some Linux-related discussion at http://lwn.net/Articles/226710/. > > Recent Linux (2.6.23) has implemented this function and some of its > filesystems support it (XFS and ext4). I found an rsync list posting > here http://www.mail-archive.com/[EMAIL PROTECTED]/msg20875.html > which shows that for the XFS filesystem, there is substantial > advantage (in terms of fragmentation) to using it. > > Assuming that this functionality is not already in ZFS, ZFS would > implement it by pre-allocating all of the requested filesystem blocks, > but marking them in such a way that their content is unassigned and > therefore the expensive copy-on-write semantics are avoided for the > first update. The allocation of the blocks should optimize future > read or append access. The system call permanently assigns these > blocks to the file even if they are not yet used. > > Bob > ====================================== > Bob Friesenhahn > [EMAIL PROTECTED], http://www.simplesystems.org/users/bfriesen/ > GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
I'll defer to the Team ZFS Gods for corrections - but, in general, the overlying philosophy for ZFS is to work automatically and transparently and not require the user (or user application) to "tell" the underlying filesystem *anything*. IOW - treat it as a "black box" storage sub-system. Currently, ZFS determines if the access pattern is random or sequential and there is no mechanism to provide it with "hints". Yes - this is a lofty and worthy goal and it would appear, upon first blush, that to provide a "hints" facility would make sense - but Team ZFS are the ultimate look-to-the-future designers and believe, that if the current implement is deficient, the next implementation will simply be better. This philosophy means that the user will never have to change a single line of code or a learned (keyboard) behavioral pattern. Given that machines keep getting faster and that more and more CPU cycles can be dedicated to "letting the machine do the work" - this philosophy is the correct approach IMHO. But is counter-intuitative for those of use used to "explaining" our intent to a dumb, resource starved computing platform. Regards, -- Al Hopper Logical Approach Inc,Plano,TX [EMAIL PROTECTED] Voice: 972.379.2133 Timezone: US CDT OpenSolaris Governing Board (OGB) Member - Apr 2005 to Mar 2007 http://www.opensolaris.org/os/community/ogb/ogb_2005-2007/ _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss