From: "Pádraig Brady" <P@draigBrady.com>
To: Steve French <smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: samba-technical
<samba-technical-w/Ol4Ecudpl8XjKLYN78aQ@public.gmane.org>,
"linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
David Disseldorp <ddiss-l3A5Bk7waGM@public.gmane.org>
Subject: Re: copy chunk preliminary results
Date: Mon, 04 Nov 2013 10:07:22 +0000 [thread overview]
Message-ID: <527771DA.1050701@draigBrady.com> (raw)
In-Reply-To: <CAH2r5mtoGCn-z_-Aetwaxxvn8bS19mexb7Rur3TE=RGipGCppQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On 11/04/2013 06:30 AM, Steve French wrote:
> I extended my initial copy chunk kernel client patch to handle files >
> 1MB (repeating copychunk requests multiple times, 1 chunk at a time, I
> realize that this will be even faster when I send more than 1 chunk at
> a time)
>
> Preliminary results local loopback mount of current cifs kernel code
> (vers=3.0) to Samba (master branch, running on Fedora 19 with btrfs):
>
> File size of test file (vmlinux.o) was 373987044 bytes
>
> Over the network Copychunk (refcopy) was about six times faster than without.
> ane even local copy (no reflink) is slower than remote copy with
> reflink. Copychunk would look even better except that the server disk
> is SSD.
>
>
> [sfrench@pc-on-right cifs-2.6]$ time cp vmlinux.o ~/trgt-1-local
> real 0m0.769s
> user 0m0.002s
> sys 0m0.502s
>
> (Local copy with reflink is amazingly fast on btrfs)
> [sfrench@pc-on-right cifs-2.6]$ time cp --reflink vmlinux.o
> ~/trgt-2-local-reflink
> real 0m0.004s
> user 0m0.001s
> sys 0m0.002s
>
> (remote copy with reflink to Samba was six times faster than remote
> with no reflink, similar results when repeated)
> [sfrench@pc-on-right cifs-2.6]$ time cp --reflink
> /mnt/cifs-2.6/vmlinux.o /mnt/trgt-3-remote-reflink
> real 0m0.416s
> user 0m0.000s
> sys 0m0.029s
>
>
> [sfrench@pc-on-right cifs-2.6]$ time cp /mnt/cifs-2.6/vmlinux.o
> /mnt/trgt-3-no-reflink
> real 0m2.596s
> user 0m0.007s
> sys 0m0.860s
So cp --reflink has CoW semantics and so probably not an
appropriate interface for this. Unless I'm misunderstanding,
this SMB copy offload does result in a normal copy on the server right?
So that would imply that cp should try to use the "smb_copy_offload"
ioctl unconditionally after a little introspection, or preferentially
this would be encapsulated in the recently mooted copyfile() level
kernel call, which cp etc. could just call to do the operation.
thanks,
Pádraig.
next prev parent reply other threads:[~2013-11-04 10:07 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-04 6:30 copy chunk preliminary results Steve French
[not found] ` <CAH2r5mtoGCn-z_-Aetwaxxvn8bS19mexb7Rur3TE=RGipGCppQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-04 10:07 ` Pádraig Brady [this message]
[not found] ` <527771DA.1050701-V8g9lnOeT5ydJdNcDFJN0w@public.gmane.org>
2013-11-21 10:45 ` David Disseldorp
[not found] ` <20131121114541.09f67b3f-k1XZOR0ctBLN0uC3ymp8PA@public.gmane.org>
2013-11-21 11:20 ` Christoph Hellwig
[not found] ` <20131121112044.GA26664-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2013-11-21 11:35 ` Volker Lendecke
2013-11-21 12:31 ` Steve French
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=527771DA.1050701@draigBrady.com \
--to=p@draigbrady.com \
--cc=ddiss-l3A5Bk7waGM@public.gmane.org \
--cc=linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=samba-technical-w/Ol4Ecudpl8XjKLYN78aQ@public.gmane.org \
--cc=smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.