Hmm, and what cat I do to get it work now?
DS
On Sat, Feb 16, 2008 at 01:46:34PM +1100, David Chinner wrote:
> On Fri, Feb 15, 2008 at 06:36:06PM -0600, Eric Sandeen wrote:
> > DS wrote:
> > > Hello,
> > >
> > > I need some help to tunning my storage.
> >
> > ...
> > > TIME 43 sekund
> >
> >
> > What kernel? when I test on my 2.6.23.9-85.fc8 and 2.6.22.5 boxes, I
> > see 2 and 7 seconds for rewrite, respectively.
> >
> > but granted, on ext3 I get 0 seconds for every run.
> >
> > Also the difference appears to be O_TRUNC (which the perl script does);
> > if I code it in c:
> >
> > #include <sys/types.h>
> > #include <sys/stat.h>
> > #include <fcntl.h>
> >
> > void main(void)
> > {
> > int i;
> > int fd;
> > char file[4];
> >
> > for (i = 0; i < 100; i++) {
> > sprintf(file, "%d.txt", i);
> > fd = open(file, O_CREAT|O_RDWR|O_TRUNC, 0644);
> > write(fd, "aaaaaaaaaaaaaaaaaaa\n");
> > close(fd);
> > }
> > }
> >
> > rewrite is a bit slower w/ O_TRUNC in place, plenty fast w/o it. Not
> > sure about the xfs/ext3 difference... this is probably a side-effect of
> > flushes xfs put into place on truncate (IIRC?)
>
> Yup - after a truncate we use flush-on-close semantics if the file
> is closed before pdflush does writeback. yes, it has a measurable
> impact on silly microbenchmarks like this, but nobody even noticed
> it when we introduced this code 2-3 years ago...
>
> Cheers,
>
> Dave.
> --
> Dave Chinner
> Principal Engineer
> SGI Australian Software Group
|