lkml.org 
[lkml]   [2010]   [May]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH] fuse: support splice() reading from fuse device


On Thu, 20 May 2010, Miklos Szeredi wrote:
>
> So it's not the 20GB/s throughput that's interesting but the reduced
> CPU overhead, especially on slower processors. Apart from cache
> effects 20GB/s throughput with a null filesystem means 1% CPU at
> 200MB/s transfer speed with _any_ filesystem.

No it doesn't. Really.

It means 1% CPU at 200MB _IF_ you trigger the zero copy and nothing else!

But that's a damn big if. Does it ever trigger in practice? I doubt it. In
practice, you'll have to fill the pages with something in the first place.
In practice, the destination of the data is such that you'll often end up
copying anyway - it won't be /dev/null.

That's why I claim your benchmark is meaningless. It does NOT even say
what you claim it says. It does not say 1% CPU on a 200MB/s transfer,
exactly the same way my stupid pipe zero-copy didn't mean that people
could magically get MB/s throughput with 1% CPU on pipes.

It says nothing at all, in short. You need to have a real source, and a
real destination. Not some empty filesystem and /dev/null destination.

Linus


\
 
 \ /
  Last update: 2010-05-20 21:25    [W:0.125 / U:1.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site