I have a little more information which might narrow things down a bit.  Note that both of the nodes in my two node cluster are brand new machines with fresh Centos 4.4/GFS 6.1 installations.<br><br>* The I/O blocking bahavior seems to be isolated to a single node in my two node cluster.  The other nodes show no symptoms even when running bonnie++ at the same time against a different directory
<br>* It appears that only read system calls are blocking<br>* Stopping bonnie++ on the node with blocking issues results in 15+ seconds of high I/O activity where pdflush and gfs_logd are quite busy.<br><br>Thanks,<br>Tom
<br><br><br><br><div><span class="gmail_quote">On 12/10/06, <b class="gmail_sendername"><a href="mailto:bigendian+gfs@gmail.com">bigendian+gfs@gmail.com</a></b> <<a href="mailto:bigendian+gfs@gmail.com">bigendian+gfs@gmail.com
</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">I've just set up a new two-node GFS cluster on a CORAID sr1520 ATA-over-Ethernet.  My nodes are each quad dual-core Opteron CPU systems with 32GB RAM each.  The CORAID unit exports a 
1.6TB block device that I have a GFS file system on.
<br><br>I seem to be having performance issues where certain read system calls take up to three seconds to complete.  My test app is bonnie++, and the slow-downs appear to be happen in the "Rewriting" portion of the test, though I'm not sure if this is exclusive.  If I watch top and iostat for the device in question, I see activity on the device, then long (up to three second) periods of no apparent I/O.  During the periods of no I/O the bonnie++ process is blocked on disk I/O, so it seems that the system it trying to do something.  Network traces seem to show that the host machine is not waiting on the RAID array, and the packet following the dead-period seems to always be sent from the host to the coraid device.  Unfortunately, I don't know how to dig in any deeper to figure out what the problem is.
<br><br>Below are strace and tcpdump snippets that show what I'm talking about.  Notice the time stamps and the time spent in system calls in <> brackets after the call.  I'm quite far from a GFS expert, so please let me know if other data would be helpful.
<br><br>Any help is much appreciated.<br>
<br>Thanks!<br>Tom<br><br><br># tcpdump -s14 -n<br>
...<br>23:46:40.382119 00:30:48:8b:2b:47 > 00:30:48:57:a7:ed, ethertype Unknown (0x88a2), length 4132:<br>23:46:40.382131 00:30:48:8b:2b:47 > 00:30:48:57:a7:ed, ethertype Unknown (0x88a2), length 4132:<br>23:46:43.406173


 00:30:48:57:a7:ed > 00:30:48:8b:2b:47, ethertype Unknown (0x88a2), length 60:<br>23:46:43.406495 00:30:48:8b:2b:47 > 00:30:48:57:a7:ed, ethertype Unknown (0x88a2), length 4132:<br>23:46:43.406502 00:30:48:8b:2b:47 > 00:30:48:57:a7:ed, ethertype Unknown (0x88a2), length 1060:
<br><br># strace -p 19845 -T -tt -s 5c<br>
...<br>23:46:40.380764 write(15, "\301"..., 8192) = 8192 <0.000024><br>23:46:40.380814 read(15, "\301"..., 8192) = 8192 <3.026205><br>23:46:43.407054 lseek(15, 3899392, SEEK_SET) = 3899392 <
0.000006><br>23:46:43.407090 write(15, "\301"..., 8192) = 8192 <0.000032><br><br><br><br>[root@gfs03 ~]# gfs_tool counters /opt/coraid<br>                                  locks 6651<br>                             locks held 6585
<br>                          incore inodes 69<br>                       metadata buffers 2519<br>                        unlinked inodes 0<br>                              quota IDs 0<br>                     incore log buffers 1
<br>                         log space used 0.20%<br>              meta header cache entries 0<br>                     glock dependencies 0<br>                 glocks on reclaim list 0<br>                              log wraps 5
<br>                   outstanding LM calls 0<br>                  outstanding BIO calls 1<br>                       fh2dentry misses 0<br>                       glocks reclaimed 755<br>                         glock nq calls 104485385
<br>                         glock dq calls 104426553<br>                   glock prefetch calls 1<br>                          lm_lock calls 73715<br>                        lm_unlock calls 651<br>                           lm callbacks 81471
<br>                     address operations 112591696<br>                      dentry operations 257<br>                      export operations 0<br>                        file operations 29841238<br>                       inode operations 1929
<br>                       super operations 28201660<br>                          vm operations 0<br>                        block I/O reads 3448075<br>                       block I/O writes 36719795<br>[root@gfs03 ~]# gfs_tool gettune /opt/coraid
<br>ilimit1 = 100<br>ilimit1_tries = 3<br>ilimit1_min = 1<br>ilimit2 = 500<br>ilimit2_tries = 10<br>ilimit2_min = 3<br>demote_secs = 300<br>incore_log_blocks = 1024<br>jindex_refresh_secs = 60<br>depend_secs = 60<br>scand_secs = 5
<br>recoverd_secs = 60<br>logd_secs = 1<br>quotad_secs = 5<br>inoded_secs = 15<br>quota_simul_sync = 64<br>quota_warn_period = 10<br>atime_quantum = 3600<br>quota_quantum = 60<br>quota_scale = 1.0000   (1, 1)<br>quota_enforce = 1
<br>quota_account = 1<br>new_files_jdata = 0<br>new_files_directio = 0<br>max_atomic_write = 4194304<br>max_readahead = 262144<br>lockdump_size = 131072<br>stall_secs = 600<br>complain_secs = 10<br>reclaim_limit = 5000<br>


entries_per_readdir = 32<br>prefetch_secs = 10<br>statfs_slots = 64<br>max_mhc = 10000<br>greedy_default = 100<br>greedy_quantum = 25<br>greedy_max = 250<br>rgrp_try_threshold = 100<br><br><br><br>


</blockquote></div><br>