[Linux-cluster] Behavior of "statfs_fast" settune

Mathieu Avila mathieu.avila at seanodes.com
Wed Jan 16 18:12:25 UTC 2008


Le Wed, 16 Jan 2008 11:25:38 -0500,
Wendy Cheng <wcheng at redhat.com> a écrit :

> Wendy Cheng wrote:
> > Mathieu Avila wrote:
> >> Hello GFS developers,
> >>
> >> I am in the process of evaluating the performance gain of
> >> the "statfs_fast" patch.
> >> Once the FS is mounted, I perform "gfs_tool settune ...." and then
> >> i measure the time to perform "df" on a partially filled FS. The
> >> time is almost the same, "df" returns almost instantly, with a
> >> value really near the truth, and progressively reaching the true
> >> one.
> >>
> >> But I have noticed that when the FS size increases, the time to
> >> perform "gfs_tool settune ...." increases dramatically. In fact,
> >> after a few measures, it appears that the time to perform "df"
> >> without fuzzy statfs is the same as the time to activate fuzzy
> >> statfs. 
> > In theory, this shouldn't happen. Are you on RHEL 4 or RHEL 5 ? And 
> > what is the FS size that causes this problem ?
> >
> I just did a quick try. It doesn't happen to me. By reading your
> note, were you *repeatedly* issuing "gfs_tool settune .." then
> followed by "df" ? Remember the "settune" is expected to be run
> *once* right after the particular GFS filesystem is mounted. You
> certainly *can* run it multiple times. It won't hurt anything.
> However, each time the "settune" is invoked, the code has to perform
> a regular "df" (i.e. that's the way it initializes itself). I suspect
> this is the cause of your issue. Let me know either way.
> 

I am using "cluster-1.03" with the statfs_fast patch from:
http://www.redhat.com/archives/cluster-devel/2007-March/msg00124.html
(has this been changed after ?)
All this on a Centos 5.

My use case is :
 * mkfs of a volume
 * mount on all 6 nodes 
 * timing of "settune statfs_fast 1", on all 6 nodes. 
 * timing of "df" on one node.
All commands are executed immediately one after the other.

So i issued only one "settune", on all nodes, and was expecting it to
return immediately. From what you've just said (settune performing a
real "df"), i guess this behaviour is normal.

I don't understand why it's necessary to perform a real "df" in
"settune". Isn't the licence inode used to store the previous
values of "df" so that it can give an immediate answer to "df", and then
perform a real regular "df" in background to upgrade the "cached df" to
the real value ?

--
Mathieu


--------------------------------------------------------------------------------
Les opinions et prises de position emises par le signataire du present
message lui sont propres et ne sauraient engager la responsabilite de la
societe SEANODES.

Ce message ainsi que les eventuelles pieces jointes constituent une
correspondance privee et confidentielle a l'attention exclusive du
destinataire designe ci-dessus. Si vous n'etes pas le destinataire du
present message ou une personne susceptible de pouvoir le lui delivrer, il
vous est signifie que toute divulgation, distribution ou copie de cette
transmission est strictement interdite. Si vous avez recu ce message par
erreur, nous vous remercions d'en informer l'expediteur par telephone ou de
lui retourner le present message, puis d'effacer immediatement ce message de
votre systeme.


The views and opinions expressed by the author of this message are personal.
SEANODES shall assume no liability, express or implied for such message.

This e-mail and any attachments is a confidential correspondence intended
only for use of the individual or entity named above. If you are not the
intended recipient or the agent responsible for delivering the message to
the intended recipient, you are hereby notified that any disclosure,
distribution or copying of this communication is strictly prohibited. If you
have received this communication in error, please notify the sender by phone
or by replying this message, and then delete this message from your system. 




More information about the Linux-cluster mailing list