> On Tue, 27 Nov 2007, Nitin Agrawal wrote:
>
> > Since I don't care about the actual file content but only about time
> > taken to create the FS, I want to avoid issuing actual disk writes for
> > data blocks. The way I currently do this is by writing a magic number in
> > the data blocks at the application level and checking for it in the NTFS
> > driver (ntfs_pwrite()). If a block has the magic number, I simply return
> > with the number of bytes written, without actually issuing the pwrite().
> >
> > I verify using iostat that indeed only few blocks (corresponding to
> > metadata) are being written to the device when I write a large file
> > (1GB). But in terms of time, I notice very little speed up. (17 secs as
> > compared to 19 secs)
Your problem is quite probably this one:
http://ntfs-3g.org/support.html#dd
I think you can maximum double your performance using the right write
buffers. FUSE is a very young and evolving technology and the needed
optimizations were not done or integrated yet into the stable kernel,
FUSE and ntfs-3g.
However, it seems what you really need is fallocate():
http://lwn.net/Articles/240571/
The needed FUSE patch exists but I didn't have the time to do yet the
ntfs-3g part. I would also like to have it a lot for many years, among
others, for the same reasons as you. I also do a lot of metadata, aging
analyzes on my big collection of diverse NTFS images to design the possible
most efficient algorithms.
I think you could code the missing fallocate() bits. It's really not
difficult, it just needs some time. What do you think?
Thanks,
Szaka
-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell. From the desktop to the data center, Linux is going
mainstream. Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
ntfs-3g-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ntfs-3g-devel