Re: Performance regression in write() syscall

From: Linus Torvalds
Date: Mon Feb 23 2009 - 23:29:43 EST




On Tue, 24 Feb 2009, Nick Piggin wrote:
>
> What does unixbench's fstime test do? If it is just writing to the
> pagecache, then this would be unexpected.

Hmm. Not necessarily. Even just plain writes may be slowed down, since the
nontemporal loads and stores are generally slower than the normal case. So
it does make some kind of sense to try to avoid the noncached versions for
small writes - because small writes tend to be for temp-files.

I don't know if PAGE_SIZE is the right thing to test, and I also don't
know if this is necessarily the best place to test it in, but I don't
think it's necessarily wrong to do something like this.

In fact, I think we might also just check alignment. Doing the nontemporal
crud makes little sense for a non-8-byte-aligned destination, since it
will have to do the alignment stores cached anyway - and mixing them
across a cacheline is just crazy.

(The test program doesn't seem to be testing that particular case)

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/