<HTML><HEAD>
<STYLE id=eMClientCss>blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
.plain pre, .plain tt { font-family: monospace; font-size: 100%; font-weight: normal; font-style: normal; }
body {font-family: Calibri;font-size: 11pt;}
.plain pre, .plain tt {font-family: Calibri;font-size: 11pt;}
</STYLE>

<STYLE>#64c4dd721de841278a78210cb87aa3a9 BLOCKQUOTE.cite
{PADDING-LEFT: 10px; MARGIN-LEFT: 5px; BORDER-LEFT: #cccccc 1px solid; PADDING-RIGHT: 0px; MARGIN-RIGHT: 0px}
#64c4dd721de841278a78210cb87aa3a9 BLOCKQUOTE.cite2
{PADDING-TOP: 0px; PADDING-LEFT: 10px; MARGIN-LEFT: 5px; BORDER-LEFT: #cccccc 1px solid; MARGIN-TOP: 3px; PADDING-RIGHT: 0px; MARGIN-RIGHT: 0px}
#64c4dd721de841278a78210cb87aa3a9 .plain PRE, #64c4dd721de841278a78210cb87aa3a9 .plain TT
{FONT-SIZE: 100%; FONT-FAMILY: monospace; FONT-WEIGHT: normal; FONT-STYLE: normal}
#64c4dd721de841278a78210cb87aa3a9 .plain PRE, #64c4dd721de841278a78210cb87aa3a9 .plain TT, #64c4dd721de841278a78210cb87aa3a9
{FONT-SIZE: 11pt; FONT-FAMILY: Calibri}
</STYLE>
</HEAD>
<BODY scroll=auto class>
<DIV>Forgot to attach profile info in previous email.&nbsp; Attached... &nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>David</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>------ Original Message ------</DIV>
<DIV>From: "David F. Robinson" &lt;<A href="mailto:david.robinson@corvidtec.com">david.robinson@corvidtec.com</A>&gt;</DIV>
<DIV>To: <A href="mailto:gluster-devel@gluster.org">gluster-devel@gluster.org</A></DIV>
<DIV>Sent: 8/5/2014 2:41:34 PM</DIV>
<DIV>Subject: Fw: Re: Corvid gluster testing</DIV>
<DIV>&nbsp;</DIV>
<DIV id=64c4dd721de841278a78210cb87aa3a9 class=class>
<BLOCKQUOTE class=cite2 cite=eme3fc1a31-df17-4978-a99c-f4b348e690f3@dfrobins-vaio type="cite">
<DIV>I have been testing&nbsp;some of the fixes&nbsp;that Pranith&nbsp;incorporated into the 3.5.2-beta to&nbsp;see how they performed for&nbsp;moderate levels of i/o. All of the stability issues that I had seen in previous versions seem to have been fixed in 3.5.2; however, there still seem to be some significant performance issues.&nbsp; Pranith suggested that I send this to the gluster-devel email list, so here goes: </DIV>
<DIV>&nbsp;</DIV>
<DIV>I am running an MPI job that saves a restart file to the gluster file system.&nbsp; When I use the following in my fstab to mount the gluster volume, the i/o time for the 2.5GB file is roughly 45-seconds.</DIV>
<DIV>&nbsp;</DIV>
<DIV><EM><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;gfsib01a.corvidtec.com:/homegfs /homegfs glusterfs transport=tcp,_netdev 0 0<BR></FONT></EM></DIV>
<DIV>When I switch this to use the NFS protocol (see below), the i/o time is 2.5-seconds.</DIV>
<DIV>&nbsp;</DIV>
<DIV><EM><FONT size=2>&nbsp; gfsib01a.corvidtec.com:/homegfs /homegfs nfs vers=3,intr,bg,rsize=32768,wsize=32768 0 0</FONT></EM></DIV>
<DIV>&nbsp;</DIV>
<DIV>The read-times for gluster are 10-20% faster than NFS, but the write times are almost 20x slower.&nbsp; </DIV>
<DIV>&nbsp;</DIV>
<DIV>I am running SL 6.4 and glusterfs-3.5.2-0.1.beta1.el6.x86_64... </DIV>
<DIV>&nbsp;</DIV>
<DIV><EM><FONT size=2>[root@gfs01a glusterfs]# gluster volume info homegfs<BR>Volume Name: homegfs<BR>Type: Distributed-Replicate<BR>Volume ID: 1e32672a-f1b7-4b58-ba94-58c085e59071<BR>Status: Started<BR>Number of Bricks: 2 x 2 = 4<BR>Transport-type: tcp<BR>Bricks:<BR>Brick1: gfsib01a.corvidtec.com:/data/brick01a/homegfs<BR>Brick2: gfsib01b.corvidtec.com:/data/brick01b/homegfs<BR>Brick3: gfsib01a.corvidtec.com:/data/brick02a/homegfs<BR>Brick4: gfsib01b.corvidtec.com:/data/brick02b/homegfs</FONT></EM><BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>David</DIV>
<DIV>&nbsp;</DIV>
<DIV>------ Forwarded Message ------</DIV>
<DIV>From: "Pranith Kumar Karampuri" &lt;<A href="mailto:pkarampu@redhat.com">pkarampu@redhat.com</A>&gt;</DIV>
<DIV>To: "David Robinson" &lt;<A href="mailto:david.robinson@corvidtec.com">david.robinson@corvidtec.com</A>&gt;</DIV>
<DIV>Cc: "Young Thomas" &lt;<A href="mailto:tom.young@corvidtec.com">tom.young@corvidtec.com</A>&gt;</DIV>
<DIV>Sent: 8/5/2014 2:25:38 AM</DIV>
<DIV>Subject: Re: Corvid gluster testing</DIV>
<DIV>&nbsp;</DIV>
<DIV id=3d446d2bc61141dabea6d77898e7228c>
<DIV><A href="mailto:gluster-devel@gluster.org">gluster-devel@gluster.org</A> is the email-id for the mailing list. We should probably start with the initial run numbers and the comparison for glusterfs mount and nfs mounts. May be something like </DIV>
<DIV>&nbsp;</DIV>
<DIV>glusterfs mount: 90 minutes </DIV>
<DIV>nfs mount: 25 minutes </DIV>
<DIV>&nbsp;</DIV>
<DIV>And profile outputs, volume config, number of mounts, hardware configuration should be a good start. </DIV>
<DIV>&nbsp;</DIV>
<DIV>Pranith </DIV>
<DIV>&nbsp;</DIV>
<DIV>On 08/05/2014 09:28 AM, David Robinson wrote: </DIV>
<BLOCKQUOTE class=cite type="cite">
<DIV>Thanks pranith </DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>=============================== </DIV>
<DIV>David F. Robinson, Ph.D. </DIV>
<DIV>President - Corvid Technologies </DIV>
<DIV>704.799.6944 x101 [office] </DIV>
<DIV>704.252.1310 [cell] </DIV>
<DIV>704.799.7974 [fax] </DIV>
<DIV><A href="mailto:David.Robinson@corvidtec.com">David.Robinson@corvidtec.com</A> </DIV>
<DIV><A href="http://www.corvidtechnologies.com/">http://www.corvidtechnologies.com</A> </DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE class=cite2 type="cite">
<DIV>On Aug 4, 2014, at 11:22 PM, Pranith Kumar Karampuri &lt;<A href="mailto:pkarampu@redhat.com">pkarampu@redhat.com</A>&gt; wrote: </DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE class=cite2 type="cite">
<DIV>On 08/05/2014 08:33 AM, Pranith Kumar Karampuri wrote: </DIV>
<DIV>&nbsp;</DIV>
<DIV>On 08/05/2014 08:29 AM, David F. Robinson wrote: </DIV>
<BLOCKQUOTE class=cite type="cite">
<BLOCKQUOTE class=cite type="cite">
<BLOCKQUOTE class=cite type="cite">
<DIV>On 08/05/2014 12:51 AM, David F. Robinson wrote: </DIV>
<DIV>No. I don't want to use nfs. It eliminates most of the benefits of why I want to use gluster. Failover redundancy of the pair, load balancing, etc. </DIV></BLOCKQUOTE>
<DIV>What is the meaning of 'Failover redundancy of the pair, load balancing ' Could you elaborate more? smb/nfs/glusterfs are just access protocols that gluster supports functionality is almost same </DIV></BLOCKQUOTE>
<DIV>Here is my understanding. Please correct me where I am wrong. </DIV>
<DIV>&nbsp;</DIV>
<DIV>With gluster, if I am doing a write and one of the replicated pairs goes down, there is no interruption to the I/o. The failover is handled by gluster and the fuse client. This isn't done if I use an nfs mount unless the component of the pair that goes down isn't the one I used for the mount. </DIV>
<DIV>&nbsp;</DIV>
<DIV>With nfs, I will have to mount one of the bricks. So, if I have gfs01a, gfs01b, gfs02a, gfs02b, gfs03a, gfs03b, etc and my fstab mounts gfs01a, it is my understanding that all of my I/o will go through gfs01a which then gets distributed to all of the other bricks. Gfs01a throughput becomes a bottleneck. Where if I do a gluster mount using fuse, the load balancing is handled at the client side , not the server side. If I have 1000-nodes accessing 20-gluster bricks, I need the load balancing aspect. I cannot have all traffic going through the network interface on a single brick. </DIV>
<DIV>&nbsp;</DIV>
<DIV>If I am wrong with the above assumptions, I guess my question is why would one ever use the gluster mount instead of nfs and/or samba? </DIV>
<DIV>&nbsp;</DIV>
<DIV>Tom: feel free to chime in if I have missed anything. </DIV></BLOCKQUOTE>
<DIV>I see your point now. Yes the gluster server where you did the mount is kind of a bottle neck. </DIV></BLOCKQUOTE>
<DIV>Now that we established the problem is in the clients/protocols, you should send out a detailed mail on gluster-devel and see if anyone can help with you on performance xlators that can improve it a bit more. My area of expertise is more on replication. I am sub-maintainer for replication,locks components. I also know connection management/io-threads related issues which lead to hangs as I worked on them before. Performance xlators are black box to me. </DIV>
<DIV>&nbsp;</DIV>
<DIV>Performance xlators are enabled only on fuse gluster stack. On nfs server mounts we disable all the performance xlators except write-behind as nfs client does lots of things for improving performance. I suggest you guys follow up more on gluster-devel. </DIV>
<DIV>&nbsp;</DIV>
<DIV>Appreciate all the help you did for improving the product :-). Thanks a ton! </DIV>
<DIV>Pranith </DIV>
<BLOCKQUOTE class=cite type="cite">
<DIV>Pranith </DIV>
<BLOCKQUOTE class=cite type="cite">
<DIV>David (Sent from mobile) </DIV>
<DIV>&nbsp;</DIV>
<DIV>=============================== </DIV>
<DIV>David F. Robinson, Ph.D. </DIV>
<DIV>President - Corvid Technologies </DIV>
<DIV>704.799.6944 x101 [office] </DIV>
<DIV>704.252.1310 [cell] </DIV>
<DIV>704.799.7974 [fax] </DIV>
<DIV><A href="mailto:David.Robinson@corvidtec.com">David.Robinson@corvidtec.com</A> </DIV>
<DIV><A href="http://www.corvidtechnologies.com/">http://www.corvidtechnologies.com</A> </DIV></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE>
<DIV>&nbsp;</DIV></DIV></BLOCKQUOTE></DIV></BODY></HTML>