Guillaume Dargaud <(E-Mail Removed)> wrote:
> And another reason if that I'm now looking at the problem
> differently: previous thread was about why netperf was going 5 times
> faster than NFS, and now it's about saving buffers with
> copy-avoidance which I knew nothing about until yesterday
BTW, you mentioned you are writing the file to an NFS server. Are you
sure that all the NFS operations being performed are writes, or might
there be some other operations involved? Perhaps some unfortunate
alignment of the writes relative to the block size that is triggering
read-modify-write?
I've no idea that it would help, nor even if the semantics of what you
are doing would be compatible with it, but perhaps mmap()ing the file
will avoid copies from user to kernel on your "writes" and then if the
NFS client code is able to reference filecache buffers directly
without copy... Of course that depends on whether your network
interface supports "scatter gather" - able to take multiple buffers
per packet to be sent.
BTW, did you ever try a TCP_SENDFILE test? (against a local file, not
one that is NFS mounted - even if, in theory, the netperf send-ring's
worth of data may end-up cached, why chance it
rick jones
--
firebug n, the idiot who tosses a lit cigarette out his car window
these opinions are mine, all mine; HP might not want them anyway...

feel free to post, OR email to rick.jones2 in hp.com but NOT BOTH...