Exactly. It _is_ significant if the _only_ thing you do is copy the data
around, and that's why I do like sendfile() as a concept: the concept of
sendfile() is that a pure "copy" operation is very common.
> What I'd like to know is why the transfer to user space memory is
> deemed so performance critical. Most likely, if you are going to *any*
> processing of that data, the CPU and memory IO requirements will be
> far greater than the kernel->userspace copy. Is that extra copy really
> going to matter? As Linus said, maybe it's time to buy a new computer
> if you're running that close to the wire.
Yes. I'm all for making old computers work well with Linux too, but at the
same time I see all new PC class chips coming out with memory interfaces
in the multiple GB/s range, and with 1MB+ on-chip cache. No, it may not be
common today, but it _is_ going to be common in just a few years.
And yes, you'll have PCI++ or IONG or whatever, but I think that basically
the computer manufacturers woke up to memory speeds, and I don't expect IO
to catch up. Memory is basically just always going to be faster than IO
unless the memory subsystem is really bad - memory _is_ IO, but of the
simplest and fastest kind.
Linus' prediction: memory will be at least an order of magnitude faster
than the IO bandwidth on machines that real people use. And I worry more
about cleanliness than about zero-copy in many cases.
> Linus: have I correctly interpreted your point?
Pretty much.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/