~ubuntu-branches/ubuntu/hardy/nfs-utils/hardy-updates

« back to all changes in this revision

Viewing changes to utils/nhfsstone/README

  • Committer: Bazaar Package Importer
  • Author(s): Nathaniel McCallum
  • Date: 2004-09-10 13:10:39 UTC
  • Revision ID: james.westby@ubuntu.com-20040910131039-qxfjx4pwgoz6imbv
Tags: upstream-1.0.6
ImportĀ upstreamĀ versionĀ 1.0.6

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
@(#)README 1.6 89/07/07 Legato Systems, Inc.
 
2
 
 
3
This directory contains the source for the nhfsstone (pronounced
 
4
n-f-s-stone, the "h" is silent) NFS load generating program. This
 
5
version of the program can only be compiled on 4.x BSD based UNIX
 
6
systems.
 
7
 
 
8
nhfsstone is used on an NFS client to generate an artificial load
 
9
with a particular mix of NFS operations. It reports the average
 
10
response time of the server in milliseconds per call and the load in
 
11
calls per second.  The program adjusts its calling patterns based on
 
12
the client's kernel NFS statistics and the elapsed time.  Load can be
 
13
generated over a given time or number of NFS calls. See the "nhfsstone.1"
 
14
manual page for more details.
 
15
 
 
16
The files in this directory are:
 
17
 
 
18
        DISCLAIMER      legal requirements
 
19
        Makefile        Makefile used to build nhfsstone
 
20
        README          This file
 
21
        nhfsstone.c     source file
 
22
        nhfsstone.1     manual page
 
23
        nhfsrun         shell script to run nhfsstone over multiple loads
 
24
        nhfsnums        shell script to convert nhfsrun output to plot(5)
 
25
        nhfsgraph       shell script to create a graph from nhfsnums output
 
26
 
 
27
The file "nhfsstone.1" is a manual page that describes how to use the
 
28
nhfsstone program. To look at it type "nroff -man nhfsstone.1".
 
29
 
 
30
To build an executable type "make nhfsstone". To install it, become
 
31
super-user and then type "make install". This will strip the
 
32
executable, set the group to "kmem" and set the setgid bit. If your
 
33
site requires different installation of programs that read /dev/kmem
 
34
you may have to use different ownership or permissions. Make install
 
35
will also set the execute bits on the shell scripts nhfsrun, nhfsnums
 
36
and nhfsgraph.
 
37
 
 
38
To run an nhfsstone test, create a parent test directory on a filesystem
 
39
that is NFS mounted, cd to that directory and type "nhfsstone". This will
 
40
do a run with the default settings, load = 30 calls/sec, 5000 calls,
 
41
and 7 sub-processes.
 
42
 
 
43
If you want to spread the load across several server disks, first
 
44
figure out on the server which disk partitions are exported as which
 
45
filesystems. If you don't already have more than one of these
 
46
filesystems mounted on your test client you can mount them in temporary
 
47
locations, like /mnt. Create test directories on these filesystems so
 
48
that the load will be distributed according to the simulation that you
 
49
want to run (for example, you might put 4 test directories on the
 
50
filesystem where the diskless client's root and swap live, and 2 on the
 
51
home directories filesystem, and one on the executables filesystem).
 
52
Now create a parent test directory cd to it, and make symbolic links
 
53
with the names testdir0, testdir1, ... testdir6, that point to the
 
54
real test directories. Finally, run nhfsstone from the parent test
 
55
directory.
 
56
 
 
57
If you are doing the test from a diskless machine, putting half of the
 
58
test directories in /tmp or /usr/tmp and running the test from your
 
59
home directory will simulate real diskless load patterns fairly well.
 
60
 
 
61
To do a run over multiple load levels, edit the shell script "nhfsrun" and
 
62
set the shell variables "START", "END", and "INCR" to be the correct
 
63
starting and ending loads, and load increment. The script will iterate
 
64
from START to END with an increment of INCR, run nhfsstone at each
 
65
load level, and put the output in the file "run.out". The output file
 
66
name can be changed by editing the nhfsrun script and changing the
 
67
"OUTFILE" variable or by passing a file name suffix on the command line:
 
68
 
 
69
        nhfsrun xysd
 
70
 
 
71
This produces the output file "run.xysd".
 
72
 
 
73
The script "nhfsnums" takes the output from nhfsrun and converts it
 
74
into plot(5) format so that it can be graphed using graph(1) and other
 
75
tools. It takes its input either from files given on the command line
 
76
or from standard in:
 
77
 
 
78
        nhfsnums [numsfile] ...
 
79
 
 
80
If file names are given, the suffix of each name (the part after the
 
81
".") is used as the line label for the set of numbers produced (see
 
82
plot(5)).
 
83
 
 
84
"nhfsgraph" takes the output from nhfsnums and passes it to graph(1)
 
85
with the right arguments to produce PostScript output for a labeled
 
86
graph. The nhfsgraph script can be used as a filter:
 
87
 
 
88
        nhfsnums run.* | nhfsgraph | lpr
 
89
 
 
90
 
 
91
 
 
92
 
 
93
This program is provided free of charge to anyone who wants it provided
 
94
certain conditions are met (see DISCLAIMER file for more details).
 
95
 
 
96
If you would like to receive regular information and bug fixes please
 
97
send your name, and both your Email and U.S. mail addresses to:
 
98
 
 
99
        Legato Systems, Inc.
 
100
        Nhfsstone
 
101
        260 Sheridan Avenue
 
102
        Palo Alto, California  94306
 
103
 
 
104
        nhfsstone-request@legato.com or uunet!legato.com!nhfsstone-request
 
105
 
 
106
and we will add your name to the nhfsstone mailing list. Comments and bug
 
107
reports should be sent to:
 
108
 
 
109
        nhfsstone@legato.com or uunet!legato.com!nhfsstone
 
110
 
 
111