<div dir="ltr">Hi Ben, I also thought of that, but look at this:<div><br></div><div><div>[root@gluster-client-1 gluster_vol]# echo 3 &gt; /proc/sys/vm/drop_caches; dd if=/mnt/gluster_vol/128 of=/dev/null bs=1M; </div><div>
128+0 records in</div><div>128+0 records out</div><div>134217728 bytes (134 MB) copied, 6,70874 s, 20,0 MB/s</div><div>[root@gluster-client-1 gluster_vol]# echo 3 &gt; /proc/sys/vm/drop_caches; dd if=/mnt/gluster_vol/128 of=/dev/null bs=1M; </div>
<div>128+0 records in</div><div>128+0 records out</div><div>134217728 bytes (134 MB) copied, 0,160485 s, 836 MB/s</div><div>[root@gluster-client-1 gluster_vol]# echo 3 &gt; /proc/sys/vm/drop_caches; dd if=/mnt/gluster_vol/128 of=/dev/null bs=1M; </div>
<div>128+0 records in</div><div>128+0 records out</div><div>134217728 bytes (134 MB) copied, 0,148219 s, 906 MB/s</div><div>[root@gluster-client-1 gluster_vol]# </div></div><div><br></div><div>even dropping kernel caches I get a really fast answer. I think that this is io-cache translator working on the client side for sure.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-08-22 12:27 GMT-03:00 Ben Turner <span dir="ltr">&lt;<a href="mailto:bturner@redhat.com" target="_blank">bturner@redhat.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">----- Original Message -----<br>
&gt; From: &quot;Juan José Pavlik Salles&quot; &lt;<a href="mailto:jjpavlik@gmail.com">jjpavlik@gmail.com</a>&gt;<br>
&gt; To: <a href="mailto:gluster-users@gluster.org">gluster-users@gluster.org</a><br>
&gt; Sent: Thursday, August 21, 2014 4:07:28 PM<br>
&gt; Subject: [Gluster-users] Gluster 3.5.2 gluster, how does cache work?<br>
&gt;<br>
&gt; Hi guys, I&#39;ve been reading a bit about caching in gluster volumes, but I<br>
&gt; still don&#39;t get a few things. I set up a gluster replica 2 volume like this:<br>
&gt;<br>
&gt; [root@gluster-test-1 ~]# gluster vol info vol_rep<br>
&gt; Volume Name: vol_rep<br>
&gt; Type: Replicate<br>
&gt; Volume ID: b77db06d-2686-46c7-951f-e43bde21d8ec<br>
&gt; Status: Started<br>
&gt; Number of Bricks: 1 x 2 = 2<br>
&gt; Transport-type: tcp<br>
&gt; Bricks:<br>
&gt; Brick1: gluster-test-1:/ladrillos/l1/l<br>
&gt; Brick2: gluster-test-2:/ladrillos/l1/l<br>
&gt; Options Reconfigured:<br>
&gt; performance.cache-min-file-size: 90MB<br>
&gt; performance.cache-max-file-size: 256MB<br>
&gt; performance.cache-refresh-timeout: 60<br>
&gt; performance.cache-size: 256MB<br>
&gt; [root@gluster-test-1 ~]#<br>
&gt;<br>
&gt; Then I mounted the volume with gluster client on another machine. I created<br>
&gt; an 80Mbytes file called 80, and here you have the reading test:<br>
&gt;<br>
&gt; [root@gluster-client-1 gluster_vol]# dd if=/mnt/gluster_vol/80 of=/dev/null<br>
&gt; bs=1M<br>
&gt; 80+0 records in<br>
&gt; 80+0 records out<br>
&gt; 83886080 bytes (84 MB) copied, 1,34145 s, 62,5 MB/s<br>
&gt; [root@gluster-client-1 gluster_vol]# dd if=/mnt/gluster_vol/80 of=/dev/null<br>
&gt; bs=1M<br>
&gt; 80+0 records in<br>
&gt; 80+0 records out<br>
&gt; 83886080 bytes (84 MB) copied, 0,0246918 s, 3,4 GB/s<br>
&gt; [root@gluster-client-1 gluster_vol]# dd if=/mnt/gluster_vol/80 of=/dev/null<br>
&gt; bs=1M<br>
&gt; 80+0 records in<br>
&gt; 80+0 records out<br>
&gt; 83886080 bytes (84 MB) copied, 0,0195678 s, 4,3 GB/s<br>
&gt; [root@gluster-client-1 gluster_vol]#<br>
<br>
</div></div>You are seeing the effect of client side kernel caching.  If you want to see the actual throughput for reads run:<br>
<br>
sync; echo 3 &gt; /proc/sys/vm/drop_caches; dd blah<br>
<br>
Kernel caching happens on both the client and server side, when I want to see uncached performance I drop caches on both clients and servers:<br>
<br>
run_drop_cache()<br>
{<br>
    for host in $MASTERNODE $NODE $CLIENT<br>
    do<br>
        ssh -i /root/.ssh/my_id root@${host} echo &quot;Dropping cache on $host&quot;<br>
        ssh -i /root/.ssh/my_id root@${host} sync<br>
        ssh -i /root/.ssh/my_id root@${host} &quot;echo 3 &gt; /proc/sys/vm/drop_caches&quot;<br>
    done<br>
}<br>
<br>
HTH!<br>
<span class="HOEnZb"><font color="#888888"><br>
-b<br>
</font></span><div class="im HOEnZb"><br>
&gt; Cache is working flawlessly, (even though that 80 Mbytes is smaller than the<br>
&gt; min-file-size value, but I don&#39;t care about it right now) what I don&#39;t get<br>
&gt; is where cache is being stored. Is it stored on the client side or on the<br>
&gt; server side? According to documentation, the io-cache translator could be<br>
&gt; loaded on both sides (client and server), how can I know where it is being<br>
&gt; loeaded? It looks like as it was being stored locally because of the speed,<br>
&gt; but I&#39;d like to be sure.<br>
&gt;<br>
&gt; Thanks!<br>
&gt;<br>
&gt; --<br>
&gt; Pavlik Salles Juan José<br>
&gt; Blog - <a href="http://viviendolared.blogspot.com" target="_blank">http://viviendolared.blogspot.com</a><br>
&gt;<br>
</div><div class="HOEnZb"><div class="h5">&gt; _______________________________________________<br>
&gt; Gluster-users mailing list<br>
&gt; <a href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a><br>
&gt; <a href="http://supercolony.gluster.org/mailman/listinfo/gluster-users" target="_blank">http://supercolony.gluster.org/mailman/listinfo/gluster-users</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Pavlik Salles Juan José<div>Blog - <a href="http://viviendolared.blogspot.com" target="_blank">http://viviendolared.blogspot.com</a></div>
</div>
</div>