xfs
[Top] [All Lists]

Re: fine-tuning XFS

To: Steve Lord <lord@xxxxxxx>, Florin Andrei <florin@xxxxxxx>
Subject: Re: fine-tuning XFS
From: "Nathan Scott" <nathans@xxxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 17 Jul 2001 11:54:51 +1000
Cc: linux-xfs@xxxxxxxxxxx
In-reply-to: Steve Lord <lord@sgi.com> "Re: fine-tuning XFS" (Jul 16, 2:06pm)
References: <200107161906.f6GJ6rt19078@jen.americas.sgi.com>
Sender: owner-linux-xfs@xxxxxxxxxxx
hi,

On Jul 16,  2:06pm, Steve Lord wrote:
> Subject: Re: fine-tuning XFS
> ...
> If you run this script then it will produce a couple of pages of statistics,
> there is a section called Log Operations near the end of the first column, if
> xs_log_noiclogs is incrementing rapidly then the logbufs option will help.
> 
> If you install pcp (and being internal to sgi you can get access to the
> graphical interface to this) you can look at these numbers in realtime.
> It would be interesting to see the rate at which the Directory Operations
> statistics move, these are where lookup, create and remove show up.
> 
> In the Tail-Pushing Stats at the top of the second column the 
> xs_sleep_logspace
> counter going up says that you are driving the log fairly hard and may benefit
> from a bigger log.
> 

Just to add a few more points here (shameless PCP plug ;) ...
With the open source bits you're still able to view the stats
in realtime using the PCP tools like pmval, pmie and co., eg.

[ print out the rate of change of xs_noiclogs every 3secs: ]

# /usr/bin/pmval -t 3seconds xfs.log.noiclogs

metric:    xfs.log.noiclogs
host:      localhost
semantics: cumulative counter (converting to rate)
units:     count (converting to count / sec)
samples:   all
interval:  3.00 sec
     0.0   
     0.0   
     0.0   
[ ... etc, etc. Or, more interesting... ]

# cat xfs.conf
no_incore_logs = xfs.log.noiclogs :troppo;
sleep_logspace = xfs.log_tail.sleep_logspace :troppo;

hosts = ":troppo :soggy";
some_host ( xfs.log.noiclogs $hosts > 50 count/sec )
        -> print " XFS log on host %h is on fire!";
some_host ( xfs.write_bytes $hosts > 500000 bytes/sec )
        -> print "XFS doin' lots of writes (%v bytes/sec on %h)";

# /usr/bin/pmie -v -t 2sec < xfs.conf
no_incore_logs: ?
sleep_logspace: ?
expr_1: ?
expr_2: ?

no_incore_logs: 0
sleep_logspace: 0
expr_1: false
expr_2: false

Tue Jul 17 11:39:24 2001: XFS doin' lots of writes (11564156 bytes/sec on 
troppo)
no_incore_logs: 0
sleep_logspace: 0
expr_1: false
expr_2: true

[...etc, etc... most useful run as a daemon, writing to syslog].

Also useful for watching memory activity, eg. /proc/slabinfo:

# pmval -i xfs_inode,xfs_buf_item mem.slabinfo.objects.active

metric:    mem.slabinfo.objects.active
host:      localhost
semantics: instantaneous value
units:     none
samples:   all
interval:  1.00 sec

         xfs_buf_item             xfs_inode 
                    0                  3855 
                    0                  3855 
                    0                  3857 
[...etc, etc...]

And there is an open source GUI project out there (at
http://k332.feld.cvut.cz/~lemming/projects/pcpmon.html);
or SGI customers can get hold of the PCP GUI pieces.

So, in summary, use PCP => fun for the whole family.

cheers.

-- 
Nathan


<Prev in Thread] Current Thread [Next in Thread>