[Gluster-devel] Trouble with write-back xlator

Daniel van Ham Colchete daniel.colchete at gmail.com
Tue Jun 12 20:38:55 UTC 2007


Trung,

what kind of files are you copying? Big ones or small ones? And, how are you
copying them? In parallel or one at a time?

I'm asking this because the write-behind translator will wait some time
before writing. You should have won a lot if there were a lot of parallel
writing happening because it would join the requests into fewer packets,
meaning: lower packets overhead.

Another case where write-behind is very good: some software calls a lot of
write operations with tiny data (10 bytes?). In this case, without the
write-behind, you would have thousands of packets with 10 bytes of data.
But, if you activate it, those thousands will turn into a few bigger
packets.

Still, if the files you're copying are not small, you should be getting at
least something near the speed without write-behind because the cache is
getting full every time.

I'm not a GlusterFS developer, so please anyone correct where I'm wrong. I
really want to learn to think exactly as GlusterFS thinks.

Best regards,
Daniel Colchete

On 6/12/07, Trung Le Thanh <trung_bmt at yahoo.com> wrote:
>
> Hi all,
>
> I have a glusterfs setup with 4 servers connected by a
> 100Mbps switch. The configuration files are exactly
> like those on wiki. And I experienced a very strange
> issue.
>
> With write-back is enabled, the speed of copying file
> from local hdd on a client to glusterfs is much slower
> when write-back is disabled. I tried with many
> different values of aggregate size (4KB -> 2MB) and
> the result is still the same. I think that the
> write-back is supposed to boost performance
> dramatically in this case.
>
> One more issue is when there is: when I copy a
> directory to glusterfs, the speed is around 1.5MB/s.
> When I start to copy another similar directory to
> glusterfs, the speed drops to less than 1MB/s. I
> supposed to saw the speed of 3MB/s.
>
>
> Currently I have the content of /etc/sysctl.conf like
> this:
>
> net.core.somaxconn = 1024
> net.core.netdev_max_backlog = 2500
> net.ipv4.tcp_max_syn_backlog = 1024
> net.ipv4.tcp_congestion_control = bic
> net.ipv4.ip_local_port_range = 1024 65000
> fs.file_max = 64000
> net.ipv4.tcp_keepalive_time = 3600
> net.ipv4.tcp_tw_reuse = 1
> net.ipv4.tcp_tw_recycle = 1
> net.ipv4.tcp_rfc1337 = 1
> net.ipv4.tcp_no_metrics_save = 1
> net.ipv4.tcp_timestamps = 0
> net.ipv4.tcp_fin_timeout = 30
>
> net.core.rmem_max = 16777216
> net.core.wmem_max = 16777216
> net.ipv4.tcp_rmem = 4096 87380 16777216
> net.ipv4.tcp_wmem = 4096 65536 16777216
>
> net.ipv4.conf.default.rp_filter = 1
> net.ipv4.tcp_syncookies = 1
> net.ipv4.tcp_synack_retries = 3
> net.ipv4.tcp_syn_retries = 3
>
>
> I don't know where the problem is and I really
> appreciate any help from you
>
> Thank you very much
> Best regards,
> Trung
>
>
>
>
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at nongnu.org
> http://lists.nongnu.org/mailman/listinfo/gluster-devel
>



More information about the Gluster-devel mailing list