Prestoserve and NFS performance

Chet Juszczak chet at decvax.dec.com
Tue Feb 12 10:58:09 AEST 1991


Following my earlier posting on how Prestoserve affects NFS server
performance, I received a number of questions about how the
DECsystem 5100 and DECsystem 5500 platforms perform when Prestoserve
is not being used; i.e. exactly what performance difference is the
NVRAM acceleration making over what the platforms are capable of
without it.

This posting contains three plots in postscript form.
These plots show NFS server performance measurements
made on DECsystem 5100 and DECsystem 5500 servers with RZ57
scsi disks with and without Prestoserve. The measurements were made
by me.

The methodology used was the same as described in my earlier
posting: the nhfsstone benchmark program was run on a DECsystem 5500
client. The machines were on a private network. Configuration information
is included on the plots.

The first plot shows measurements made with a DECsystem 5100 server,
the second plot shows measurements made with a DECsystem 5500 server,
and the third plot combines the data from the first two.

Note that adding a second disk to the disk based configurations
made a significant impact, while it made little difference
to the NVRAM based configurations. Other testing has shown little
effect upon server response for this benchmark when using slower disks.

Assuming reasonable server cache hit rates for read requests,
varying the number of disks and disk speed has little impact upon
the NVRAM based server response profile.

	-chet

Chet Juszczak				chet at decvax.dec.com
Digital Equipment Corporation		decvax!chet
110 Spit Brook Rd. ZKO3-3/U14
Nashua, NH 03062

***************** start of postcript plots - cut here ***********************
%!

560 0 translate 90 rotate
%!

/symbolFont 10 dict def
symbolFont begin
/FontType 3 def
/FontMatrix [.001 0 0 .001 0 0] def
/FontBBox [-500 -500 500 500] def
/Encoding 256 array def
0 1 255 {Encoding exch /.notdef put} for
Encoding 1 /Cross put
Encoding 2 /Triangle put
Encoding 3 /Trianglefilled put
Encoding 4 /Diamond put
Encoding 5 /Diamondfilled put
Encoding 6 /Square put
Encoding 7 /Squarefilled put
Encoding 8 /Rectan put
Encoding 9 /Rectanfilled put
Encoding 10 /Circle put
Encoding 11 /Circlefilled put
Encoding 12 /Bullet put
Encoding 13 /Star put
Encoding 14 /Plus put

/graphclip {newpath moveto lineto lineto lineto closepath clip } def

/Procs 15 dict def
Procs begin
/.notdef {} def

/Cross {
 newpath -500 -500 moveto 500 500 lineto stroke
 newpath -500 500 moveto 500 -500 lineto stroke } def

/Triangle {
 newpath -500 -500 moveto 0 500 lineto 500 -500 lineto closepath stroke } def

/Trianglefilled {
 newpath -500 -500 moveto 0 500 lineto 500 -500 lineto closepath fill } def

/Diamond {
  newpath -500 0 moveto 0 500 lineto 500 0 lineto 0 -500 lineto closepath
 stroke } def

/Diamondfilled {
  newpath -500 0 moveto 0 500 lineto 500 0 lineto 0 -500 lineto closepath
  fill } def

/Square {
 newpath -500 -500 moveto -500 500 lineto 500 500 lineto 500 -500 lineto
 closepath stroke } def

/Squarefilled {
 newpath -500 -500 moveto -500 500 lineto 500 500 lineto 500 -500 lineto
 closepath fill } def

/Rectan {
 newpath -200 -500 moveto -200 500 lineto 200 500 lineto 200 -500 lineto  
closepath stroke } def

/Rectanfilled {
 newpath -200 -500 moveto -200 500 lineto 200 500 lineto 200 -500 lineto  
closepath fill } def


/Circle { newpath 0 0 500 0 360 arc stroke } def

/Circlefilled { newpath 0 0 500 0 360 arc closepath fill } def


/Bullet { newpath 0 0 500 0 360 arc closepath fill } def

/Plus {
 newpath 0 -500 moveto 0 500 lineto stroke
 newpath -500 0 moveto 500 0 lineto stroke } def

/Star {
 newpath 0 -500 moveto 0 500 lineto stroke
 newpath -500 0 moveto 500 0 lineto stroke
 newpath -500 -500 moveto 500 500 lineto stroke
 newpath -500 500 moveto 500 -500 lineto stroke } def

end

/BuildChar {
 1000 0 -500 -500 500 500 setcachedevice
 exch begin Encoding exch get Procs exch get end exec } def
end

/Symbols symbolFont definefont pop

% size SetSym		-> set font to be symbols scaled by 'size'
/SetSym { /Symbols findfont exch scalefont setfont } def

% size fontname SetTxt		-> set font 'fontname' scaled by 'size'
/SetTxt { findfont exch scalefont setfont } def

% dashtype thicknes SL
/SL { setlinewidth 0 setdash } def

/cross {2 copy le {exch pop} {pop} ifelse} def

%9 added to distinguish from other clashing scribe definitions
% from to L9	-> print line between points 'from' and 'to'
/L9 { newpath moveto lineto stroke } def
/S9 { newpath moveto } def
/M9 { lineto } def
/D9 { stroke } def
/SS9 { setscreen } def
/G9 { setgray } def
/F9 {newpath moveto lineto lineto lineto closepath fill} def
/E9 {closepath fill} def
% E9 is fills for incremental curves, while F9 for curve segments

/Landscape {612 0 translate 90 rotate} def

% save current point in global variable psx psy
/SAVPOS { /psx currentpoint pop def /psy currentpoint exch pop def } def

% string angle xpos ypos TXL	-> print 'string' at pos xpos, ypos
/TXL { gsave translate rotate 0 0 moveto show SAVPOS grestore } def

% string angle xpos ypos TXR	-> print 'string' at pos xpos, ypos
/TXR { gsave translate rotate dup stringwidth pop neg 0 moveto show SAVPOS 
       grestore } def

% string angle xpos ypos TXC	-> print 'string' at pos xpos, ypos
/TXC { gsave translate rotate dup stringwidth pop 2 div neg 0 moveto show
       SAVPOS grestore } def

% string angle TXREL	-> print 'string' at xpos ypos translate psx psy rel
/TXREL { gsave translate rotate psx psy moveto show SAVPOS grestore } def

% char xpos ypos SY	-> print symbol 'char' at position xpos, ypos
/SY { moveto show } def

/len {dup mul exch dup mul add sqrt}def


%%%%%%%%%%%%%%%%%%%%%%%  CURVE SMOOTHING  %%%%%%%%%%%%%%%%%%%%%%

% Curve Smoothing Routines
%  Ernest Wood  -  Wed Apr 16 09:05:05 1986
%
%  These routines will ALWAYS create a smooth curve which
%  intercepts EVERY point used to generate them.
%
%  The definition qA determines the amount of overshoot smoothing
%  produces around each point.  The distance is the distance to the
%  next point times aA.  The factor qB scales the amount of overshoot
%  by the acuteness of the angle around the point.
%
%  These values make a square of points into a circle.
/qA .3 def		% used in qx
/qB 1 def		% used in afactor

/8a 8 array def
%
%  Angle of vector from p0 to p1	p0 p1 polar ang
/polar{qs neg exch neg atan}def 

%subtract and add points	p0 p1 qs p0-p1
%				p0 p1 qa p0+p1
/qs{exch 3 1 roll sub 3 1 roll sub exch}def
/qa{exch 3 1 roll add 3 1 roll add exch}def

%  Extract point from 8 point array
%
/Pt{2 mul dup 8a exch get exch 1 add 8a exch get}def

%  a0 a1 mirrorang ma
%	If a0 is the angle from p1 to p0 and a1 is the angle from
%	p1 to p2 then ma is the mirror angle between p0-p1 and p1-p2.
%  a0 a1 afactor f
%	If a0 is the angle from p1 to p0 and a1 is the angle from
%	p1 to p2 then f is the ratio of the inside angle between a0 and a1
%	and 180 times qB.  This ratio is saturated at 1 and if qB is 0 then
%	the value returned is always 1.  Thus the more acute the angle 
%	the smaller the value of f.
%
/mirrorang{2 copy add 2 div 3 1 roll sub 0 lt {90} {-90}ifelse add}def
/afactor{
    qB 0 eq
	{ 1 }
	{sub abs dup 180 gt {360 exch sub} if 180 div qB mul
	 dup 1 gt {pop 1} if}
    ifelse
}def

%  a d xya x y
%	Given angle a and distance d
%	produce x and y offsets.
%
/xya{exch 2 copy cos mul 3 1 roll sin mul}def

%  p0 p1 p2 p3  qx  pp1 pp2 pp3
%	Given 4 points on a curve produce the pp# values needed by
%	curveto to draw a smooth curve between p1 and p2.  The slope
%	of the curve at p1 and p2 will be perpendicular to the bisector
%	of a angle between p0/p1/p2 or p1/p2/p3.
%
/qx{
    8a astore pop
    1 Pt 2 Pt qs len qA mul /dist exch def
    1 Pt 0 Pt polar
    1 Pt 2 Pt polar
    2 copy mirrorang
    3 1 roll afactor dist mul
    xya 1 Pt qa
    2 Pt 3 Pt polar
    2 Pt 1 Pt polar
    2 copy mirrorang
    3 1 roll afactor dist mul
    xya 2 Pt qa
    2 Pt
}def

/qp{8 copy 16 -2 roll pop pop}def
/ns1{4 copy 4 -2 roll 2 copy qa 4 2 roll qs 6 2 roll /ns{ns2}def }def
/ns2{qp qx curveto}def

%  User definitions for curve smoothing routines.
%	First (ms), intermediate (ns), and last points with (fs) and
%	without (nsfs) automatic stroke execution.
%
/ms{2 copy newpath moveto /ns{ns1}def}def
/ns{ns1}def
/fs{stroke}def
/nsfs{ns 4 copy 2 copy qa 4 2 roll qs qx curveto}def
/nsend{4 copy 2 copy qa 4 2 roll qs qx curveto}def

6 SetSym
<02> 494.4 496.8 SY
10 /Helvetica SetTxt
( DECsystem 5100, 1 RZ57) 0 507.904 493.8 TXL
6 SetSym
<03> 494.4 483.8 SY
10 /Helvetica SetTxt
( DECsystem 5100 Prestoserve, 1 RZ57) 0 507.904 480.8 TXL
6 SetSym
<0a> 494.4 470.8 SY
10 /Helvetica SetTxt
( DECsystem 5100, 2 RZ57) 0 507.904 467.8 TXL
6 SetSym
<0b> 494.4 457.8 SY
10 /Helvetica SetTxt
( DECsystem 5100 Prestoserve, 2 RZ57) 0 507.904 454.8 TXL
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
112.09 202.104 ms
[] 0.600000 SL
151.661 202.104 ns
190.618 231.768 ns
227.981 282.744 ns
266.592 346.032 ns
296.429 435.024 ns
303.744 471.168 ns
313.44 458.136 ns
307.219 475.704 ns
nsend
D9
112.454 122.544 ms
150.355 142.056 ns
190.003 142.272 ns
228.691 159.12 ns
266.227 171.144 ns
306.95 190.008 ns
341.126 207.936 ns
385.498 242.424 ns
428.448 268.128 ns
436.646 323.64 ns
446.726 321.336 ns
nsend
D9
111.898 158.472 ms
151.027 182.304 ns
189.216 192.672 ns
227.424 205.848 ns
265.094 233.856 ns
302.4 258.84 ns
347.808 294.48 ns
365.856 341.064 ns
368.544 343.584 ns
370.848 342.792 ns
nsend
D9
111.974 125.424 ms
150.509 132.624 ns
190.003 142.128 ns
227.098 146.808 ns
266.765 162.432 ns
305.318 175.68 ns
348.134 199.44 ns
384.826 210.528 ns
418.368 238.176 ns
441.293 282.024 ns
446.016 287.136 ns
449.069 285.12 ns
nsend
D9
initclip 
(|) 0 72 72 TXC
10 /Helvetica-Bold SetTxt
(0) 0 72 60 TXC
10 /Helvetica SetTxt
(|) 0 110.4 72 TXC
10 /Helvetica-Bold SetTxt
(20) 0 110.4 60 TXC
10 /Helvetica SetTxt
(|) 0 148.8 72 TXC
10 /Helvetica-Bold SetTxt
(40) 0 148.8 60 TXC
10 /Helvetica SetTxt
(|) 0 187.2 72 TXC
10 /Helvetica-Bold SetTxt
(60) 0 187.2 60 TXC
10 /Helvetica SetTxt
(|) 0 225.6 72 TXC
10 /Helvetica-Bold SetTxt
(80) 0 225.6 60 TXC
10 /Helvetica SetTxt
(|) 0 264 72 TXC
10 /Helvetica-Bold SetTxt
(100) 0 264 60 TXC
10 /Helvetica SetTxt
(|) 0 302.4 72 TXC
10 /Helvetica-Bold SetTxt
(120) 0 302.4 60 TXC
10 /Helvetica SetTxt
(|) 0 340.8 72 TXC
10 /Helvetica-Bold SetTxt
(140) 0 340.8 60 TXC
10 /Helvetica SetTxt
(|) 0 379.2 72 TXC
10 /Helvetica-Bold SetTxt
(160) 0 379.2 60 TXC
10 /Helvetica SetTxt
(|) 0 417.6 72 TXC
10 /Helvetica-Bold SetTxt
(180) 0 417.6 60 TXC
10 /Helvetica SetTxt
(|) 0 456 72 TXC
10 /Helvetica-Bold SetTxt
(200) 0 456 60 TXC
10 /Helvetica SetTxt
(|) 0 494.4 72 TXC
10 /Helvetica-Bold SetTxt
(220) 0 494.4 60 TXC
10 /Helvetica SetTxt
(|) 0 532.8 72 TXC
10 /Helvetica-Bold SetTxt
(240) 0 532.8 60 TXC
10 /Helvetica SetTxt
(|) 0 571.2 72 TXC
10 /Helvetica-Bold SetTxt
(260) 0 571.2 60 TXC
10 /Helvetica SetTxt
(|) 0 609.6 72 TXC
10 /Helvetica-Bold SetTxt
(280) 0 609.6 60 TXC
10 /Helvetica SetTxt
(|) 0 648 72 TXC
10 /Helvetica-Bold SetTxt
(300) 0 648 60 TXC
10 /Helvetica SetTxt
(|) -90 72 72 TXC
10 /Helvetica-Bold SetTxt
(0) 0 67 69 TXR
10 /Helvetica SetTxt
(|) -90 72 108 TXC
10 /Helvetica-Bold SetTxt
(5) 0 67 105 TXR
10 /Helvetica SetTxt
(|) -90 72 144 TXC
10 /Helvetica-Bold SetTxt
(10) 0 67 141 TXR
10 /Helvetica SetTxt
(|) -90 72 180 TXC
10 /Helvetica-Bold SetTxt
(15) 0 67 177 TXR
10 /Helvetica SetTxt
(|) -90 72 216 TXC
10 /Helvetica-Bold SetTxt
(20) 0 67 213 TXR
10 /Helvetica SetTxt
(|) -90 72 252 TXC
10 /Helvetica-Bold SetTxt
(25) 0 67 249 TXR
10 /Helvetica SetTxt
(|) -90 72 288 TXC
10 /Helvetica-Bold SetTxt
(30) 0 67 285 TXR
10 /Helvetica SetTxt
(|) -90 72 324 TXC
10 /Helvetica-Bold SetTxt
(35) 0 67 321 TXR
10 /Helvetica SetTxt
(|) -90 72 360 TXC
10 /Helvetica-Bold SetTxt
(40) 0 67 357 TXR
10 /Helvetica SetTxt
(|) -90 72 396 TXC
10 /Helvetica-Bold SetTxt
(45) 0 67 393 TXR
10 /Helvetica SetTxt
(|) -90 72 432 TXC
10 /Helvetica-Bold SetTxt
(50) 0 67 429 TXR
10 /Helvetica SetTxt
(|) -90 72 468 TXC
10 /Helvetica-Bold SetTxt
(55) 0 67 465 TXR
10 /Helvetica SetTxt
(|) -90 72 504 TXC
10 /Helvetica-Bold SetTxt
(60) 0 67 501 TXR
10 /Helvetica SetTxt
( DECsystem 5100 One and Two Disk Nhfsstone Profile) 0 360 28 TXC
[] 1.000000 SL
2 setlinecap
72 72 648 72 
L9
0 setlinecap
72 72 72 504 
L9
( NFS Operations/Second) 0 648 47 TXR
( Response Time (Msec)) 90 41.5 504 TXR
(CONFIGURATION) 0 81.6 496.8 TXL
( ) 0 81.6 486.3 TXL
(Nhfsstone:) 0 81.6 475.8 TXL
(    V1.20, default mix, 6 procs ) 0 81.6 465.3 TXL
(Client:) 0 81.6 454.8 TXL
(    DECsystem 5500, ULTRIX V4.1, 16 MB,) 0 81.6 444.3 TXL
(      10% bufcache, 4 biods) 0 81.6 433.8 TXL
(Servers:) 0 81.6 423.3 TXL
(    DECsystem 5100, ULTRIX V4.1, 32 MB,) 0 81.6 412.8 TXL
(      25% bufcache, RZ57 disks, 16 nfsds) 0 81.6 402.3 TXL
() 0 81.6 391.8 TXL
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
6 SetSym
<02> 112.09 202.104 SY
<02> 151.661 202.104 SY
<02> 190.618 231.768 SY
<02> 227.981 282.744 SY
<02> 266.592 346.032 SY
<02> 296.429 435.024 SY
<02> 303.744 471.168 SY
<02> 313.44 458.136 SY
<02> 307.219 475.704 SY
<03> 112.454 122.544 SY
<03> 150.355 142.056 SY
<03> 190.003 142.272 SY
<03> 228.691 159.12 SY
<03> 266.227 171.144 SY
<03> 306.95 190.008 SY
<03> 341.126 207.936 SY
<03> 385.498 242.424 SY
<03> 428.448 268.128 SY
<03> 436.646 323.64 SY
<03> 446.726 321.336 SY
<0a> 111.898 158.472 SY
<0a> 151.027 182.304 SY
<0a> 189.216 192.672 SY
<0a> 227.424 205.848 SY
<0a> 265.094 233.856 SY
<0a> 302.4 258.84 SY
<0a> 347.808 294.48 SY
<0a> 365.856 341.064 SY
<0a> 368.544 343.584 SY
<0a> 370.848 342.792 SY
<0b> 111.974 125.424 SY
<0b> 150.509 132.624 SY
<0b> 190.003 142.128 SY
<0b> 227.098 146.808 SY
<0b> 266.765 162.432 SY
<0b> 305.318 175.68 SY
<0b> 348.134 199.44 SY
<0b> 384.826 210.528 SY
<0b> 418.368 238.176 SY
<0b> 441.293 282.024 SY
<0b> 446.016 287.136 SY
<0b> 449.069 285.12 SY
initclip 
showpage
%!

560 0 translate 90 rotate
%!

/symbolFont 10 dict def
symbolFont begin
/FontType 3 def
/FontMatrix [.001 0 0 .001 0 0] def
/FontBBox [-500 -500 500 500] def
/Encoding 256 array def
0 1 255 {Encoding exch /.notdef put} for
Encoding 1 /Cross put
Encoding 2 /Triangle put
Encoding 3 /Trianglefilled put
Encoding 4 /Diamond put
Encoding 5 /Diamondfilled put
Encoding 6 /Square put
Encoding 7 /Squarefilled put
Encoding 8 /Rectan put
Encoding 9 /Rectanfilled put
Encoding 10 /Circle put
Encoding 11 /Circlefilled put
Encoding 12 /Bullet put
Encoding 13 /Star put
Encoding 14 /Plus put

/graphclip {newpath moveto lineto lineto lineto closepath clip } def

/Procs 15 dict def
Procs begin
/.notdef {} def

/Cross {
 newpath -500 -500 moveto 500 500 lineto stroke
 newpath -500 500 moveto 500 -500 lineto stroke } def

/Triangle {
 newpath -500 -500 moveto 0 500 lineto 500 -500 lineto closepath stroke } def

/Trianglefilled {
 newpath -500 -500 moveto 0 500 lineto 500 -500 lineto closepath fill } def

/Diamond {
  newpath -500 0 moveto 0 500 lineto 500 0 lineto 0 -500 lineto closepath
 stroke } def

/Diamondfilled {
  newpath -500 0 moveto 0 500 lineto 500 0 lineto 0 -500 lineto closepath
  fill } def

/Square {
 newpath -500 -500 moveto -500 500 lineto 500 500 lineto 500 -500 lineto
 closepath stroke } def

/Squarefilled {
 newpath -500 -500 moveto -500 500 lineto 500 500 lineto 500 -500 lineto
 closepath fill } def

/Rectan {
 newpath -200 -500 moveto -200 500 lineto 200 500 lineto 200 -500 lineto  
closepath stroke } def

/Rectanfilled {
 newpath -200 -500 moveto -200 500 lineto 200 500 lineto 200 -500 lineto  
closepath fill } def


/Circle { newpath 0 0 500 0 360 arc stroke } def

/Circlefilled { newpath 0 0 500 0 360 arc closepath fill } def


/Bullet { newpath 0 0 500 0 360 arc closepath fill } def

/Plus {
 newpath 0 -500 moveto 0 500 lineto stroke
 newpath -500 0 moveto 500 0 lineto stroke } def

/Star {
 newpath 0 -500 moveto 0 500 lineto stroke
 newpath -500 0 moveto 500 0 lineto stroke
 newpath -500 -500 moveto 500 500 lineto stroke
 newpath -500 500 moveto 500 -500 lineto stroke } def

end

/BuildChar {
 1000 0 -500 -500 500 500 setcachedevice
 exch begin Encoding exch get Procs exch get end exec } def
end

/Symbols symbolFont definefont pop

% size SetSym		-> set font to be symbols scaled by 'size'
/SetSym { /Symbols findfont exch scalefont setfont } def

% size fontname SetTxt		-> set font 'fontname' scaled by 'size'
/SetTxt { findfont exch scalefont setfont } def

% dashtype thicknes SL
/SL { setlinewidth 0 setdash } def

/cross {2 copy le {exch pop} {pop} ifelse} def

%9 added to distinguish from other clashing scribe definitions
% from to L9	-> print line between points 'from' and 'to'
/L9 { newpath moveto lineto stroke } def
/S9 { newpath moveto } def
/M9 { lineto } def
/D9 { stroke } def
/SS9 { setscreen } def
/G9 { setgray } def
/F9 {newpath moveto lineto lineto lineto closepath fill} def
/E9 {closepath fill} def
% E9 is fills for incremental curves, while F9 for curve segments

/Landscape {612 0 translate 90 rotate} def

% save current point in global variable psx psy
/SAVPOS { /psx currentpoint pop def /psy currentpoint exch pop def } def

% string angle xpos ypos TXL	-> print 'string' at pos xpos, ypos
/TXL { gsave translate rotate 0 0 moveto show SAVPOS grestore } def

% string angle xpos ypos TXR	-> print 'string' at pos xpos, ypos
/TXR { gsave translate rotate dup stringwidth pop neg 0 moveto show SAVPOS 
       grestore } def

% string angle xpos ypos TXC	-> print 'string' at pos xpos, ypos
/TXC { gsave translate rotate dup stringwidth pop 2 div neg 0 moveto show
       SAVPOS grestore } def

% string angle TXREL	-> print 'string' at xpos ypos translate psx psy rel
/TXREL { gsave translate rotate psx psy moveto show SAVPOS grestore } def

% char xpos ypos SY	-> print symbol 'char' at position xpos, ypos
/SY { moveto show } def

/len {dup mul exch dup mul add sqrt}def


%%%%%%%%%%%%%%%%%%%%%%%  CURVE SMOOTHING  %%%%%%%%%%%%%%%%%%%%%%

% Curve Smoothing Routines
%  Ernest Wood  -  Wed Apr 16 09:05:05 1986
%
%  These routines will ALWAYS create a smooth curve which
%  intercepts EVERY point used to generate them.
%
%  The definition qA determines the amount of overshoot smoothing
%  produces around each point.  The distance is the distance to the
%  next point times aA.  The factor qB scales the amount of overshoot
%  by the acuteness of the angle around the point.
%
%  These values make a square of points into a circle.
/qA .3 def		% used in qx
/qB 1 def		% used in afactor

/8a 8 array def
%
%  Angle of vector from p0 to p1	p0 p1 polar ang
/polar{qs neg exch neg atan}def 

%subtract and add points	p0 p1 qs p0-p1
%				p0 p1 qa p0+p1
/qs{exch 3 1 roll sub 3 1 roll sub exch}def
/qa{exch 3 1 roll add 3 1 roll add exch}def

%  Extract point from 8 point array
%
/Pt{2 mul dup 8a exch get exch 1 add 8a exch get}def

%  a0 a1 mirrorang ma
%	If a0 is the angle from p1 to p0 and a1 is the angle from
%	p1 to p2 then ma is the mirror angle between p0-p1 and p1-p2.
%  a0 a1 afactor f
%	If a0 is the angle from p1 to p0 and a1 is the angle from
%	p1 to p2 then f is the ratio of the inside angle between a0 and a1
%	and 180 times qB.  This ratio is saturated at 1 and if qB is 0 then
%	the value returned is always 1.  Thus the more acute the angle 
%	the smaller the value of f.
%
/mirrorang{2 copy add 2 div 3 1 roll sub 0 lt {90} {-90}ifelse add}def
/afactor{
    qB 0 eq
	{ 1 }
	{sub abs dup 180 gt {360 exch sub} if 180 div qB mul
	 dup 1 gt {pop 1} if}
    ifelse
}def

%  a d xya x y
%	Given angle a and distance d
%	produce x and y offsets.
%
/xya{exch 2 copy cos mul 3 1 roll sin mul}def

%  p0 p1 p2 p3  qx  pp1 pp2 pp3
%	Given 4 points on a curve produce the pp# values needed by
%	curveto to draw a smooth curve between p1 and p2.  The slope
%	of the curve at p1 and p2 will be perpendicular to the bisector
%	of a angle between p0/p1/p2 or p1/p2/p3.
%
/qx{
    8a astore pop
    1 Pt 2 Pt qs len qA mul /dist exch def
    1 Pt 0 Pt polar
    1 Pt 2 Pt polar
    2 copy mirrorang
    3 1 roll afactor dist mul
    xya 1 Pt qa
    2 Pt 3 Pt polar
    2 Pt 1 Pt polar
    2 copy mirrorang
    3 1 roll afactor dist mul
    xya 2 Pt qa
    2 Pt
}def

/qp{8 copy 16 -2 roll pop pop}def
/ns1{4 copy 4 -2 roll 2 copy qa 4 2 roll qs 6 2 roll /ns{ns2}def }def
/ns2{qp qx curveto}def

%  User definitions for curve smoothing routines.
%	First (ms), intermediate (ns), and last points with (fs) and
%	without (nsfs) automatic stroke execution.
%
/ms{2 copy newpath moveto /ns{ns1}def}def
/ns{ns1}def
/fs{stroke}def
/nsfs{ns 4 copy 2 copy qa 4 2 roll qs qx curveto}def
/nsend{4 copy 2 copy qa 4 2 roll qs qx curveto}def

6 SetSym
<04> 494.4 496.8 SY
10 /Helvetica SetTxt
( DECsystem 5500, 1 RZ57) 0 507.904 493.8 TXL
6 SetSym
<05> 494.4 483.8 SY
10 /Helvetica SetTxt
( DECsystem 5500 Prestoserve, 1 RZ57) 0 507.904 480.8 TXL
6 SetSym
<06> 494.4 470.8 SY
10 /Helvetica SetTxt
( DECsystem 5500, 2 RZ57) 0 507.904 467.8 TXL
6 SetSym
<07> 494.4 457.8 SY
10 /Helvetica SetTxt
( DECsystem 5500 Prestoserve, 2 RZ57) 0 507.904 454.8 TXL
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
111.533 153.72 ms
[] 0.600000 SL
150.778 170.352 ns
189.062 185.904 ns
227.654 207.144 ns
266.035 227.448 ns
301.44 282.096 ns
325.056 346.68 ns
322.118 388.584 ns
321.485 394.056 ns
nsend
D9
111.322 112.392 ms
151.027 115.632 ns
189.542 116.064 ns
227.558 126.216 ns
267.629 129.816 ns
305.146 135.36 ns
350.688 142.704 ns
387.725 152.136 ns
420.845 168.696 ns
456.864 178.272 ns
500.755 189.72 ns
534.067 203.472 ns
560.794 233.784 ns
573.581 230.04 ns
566.899 235.152 ns
nsend
D9
111.302 156.672 ms
150.816 158.112 ns
189.216 164.448 ns
227.386 176.184 ns
266.227 183.6 ns
303.283 191.304 ns
348.192 207.216 ns
380.256 233.856 ns
418.368 250.776 ns
447.168 262.296 ns
464.448 271.584 ns
471.302 273.384 ns
nsend
D9
111.725 109.152 ms
150.912 110.736 ns
190.061 117.648 ns
227.578 122.688 ns
266.669 129.816 ns
305.03 133.56 ns
350.784 143.496 ns
385.267 148.896 ns
424.397 156.24 ns
457.152 164.736 ns
499.181 178.344 ns
533.587 193.392 ns
571.949 221.976 ns
576.979 230.76 ns
589.555 228.024 ns
nsend
D9
initclip 
(|) 0 72 72 TXC
10 /Helvetica-Bold SetTxt
(0) 0 72 60 TXC
10 /Helvetica SetTxt
(|) 0 110.4 72 TXC
10 /Helvetica-Bold SetTxt
(20) 0 110.4 60 TXC
10 /Helvetica SetTxt
(|) 0 148.8 72 TXC
10 /Helvetica-Bold SetTxt
(40) 0 148.8 60 TXC
10 /Helvetica SetTxt
(|) 0 187.2 72 TXC
10 /Helvetica-Bold SetTxt
(60) 0 187.2 60 TXC
10 /Helvetica SetTxt
(|) 0 225.6 72 TXC
10 /Helvetica-Bold SetTxt
(80) 0 225.6 60 TXC
10 /Helvetica SetTxt
(|) 0 264 72 TXC
10 /Helvetica-Bold SetTxt
(100) 0 264 60 TXC
10 /Helvetica SetTxt
(|) 0 302.4 72 TXC
10 /Helvetica-Bold SetTxt
(120) 0 302.4 60 TXC
10 /Helvetica SetTxt
(|) 0 340.8 72 TXC
10 /Helvetica-Bold SetTxt
(140) 0 340.8 60 TXC
10 /Helvetica SetTxt
(|) 0 379.2 72 TXC
10 /Helvetica-Bold SetTxt
(160) 0 379.2 60 TXC
10 /Helvetica SetTxt
(|) 0 417.6 72 TXC
10 /Helvetica-Bold SetTxt
(180) 0 417.6 60 TXC
10 /Helvetica SetTxt
(|) 0 456 72 TXC
10 /Helvetica-Bold SetTxt
(200) 0 456 60 TXC
10 /Helvetica SetTxt
(|) 0 494.4 72 TXC
10 /Helvetica-Bold SetTxt
(220) 0 494.4 60 TXC
10 /Helvetica SetTxt
(|) 0 532.8 72 TXC
10 /Helvetica-Bold SetTxt
(240) 0 532.8 60 TXC
10 /Helvetica SetTxt
(|) 0 571.2 72 TXC
10 /Helvetica-Bold SetTxt
(260) 0 571.2 60 TXC
10 /Helvetica SetTxt
(|) 0 609.6 72 TXC
10 /Helvetica-Bold SetTxt
(280) 0 609.6 60 TXC
10 /Helvetica SetTxt
(|) 0 648 72 TXC
10 /Helvetica-Bold SetTxt
(300) 0 648 60 TXC
10 /Helvetica SetTxt
(|) -90 72 72 TXC
10 /Helvetica-Bold SetTxt
(0) 0 67 69 TXR
10 /Helvetica SetTxt
(|) -90 72 108 TXC
10 /Helvetica-Bold SetTxt
(5) 0 67 105 TXR
10 /Helvetica SetTxt
(|) -90 72 144 TXC
10 /Helvetica-Bold SetTxt
(10) 0 67 141 TXR
10 /Helvetica SetTxt
(|) -90 72 180 TXC
10 /Helvetica-Bold SetTxt
(15) 0 67 177 TXR
10 /Helvetica SetTxt
(|) -90 72 216 TXC
10 /Helvetica-Bold SetTxt
(20) 0 67 213 TXR
10 /Helvetica SetTxt
(|) -90 72 252 TXC
10 /Helvetica-Bold SetTxt
(25) 0 67 249 TXR
10 /Helvetica SetTxt
(|) -90 72 288 TXC
10 /Helvetica-Bold SetTxt
(30) 0 67 285 TXR
10 /Helvetica SetTxt
(|) -90 72 324 TXC
10 /Helvetica-Bold SetTxt
(35) 0 67 321 TXR
10 /Helvetica SetTxt
(|) -90 72 360 TXC
10 /Helvetica-Bold SetTxt
(40) 0 67 357 TXR
10 /Helvetica SetTxt
(|) -90 72 396 TXC
10 /Helvetica-Bold SetTxt
(45) 0 67 393 TXR
10 /Helvetica SetTxt
(|) -90 72 432 TXC
10 /Helvetica-Bold SetTxt
(50) 0 67 429 TXR
10 /Helvetica SetTxt
(|) -90 72 468 TXC
10 /Helvetica-Bold SetTxt
(55) 0 67 465 TXR
10 /Helvetica SetTxt
(|) -90 72 504 TXC
10 /Helvetica-Bold SetTxt
(60) 0 67 501 TXR
10 /Helvetica SetTxt
( DECsystem 5500 One and Two Disk Nhfsstone Profile) 0 360 28 TXC
[] 1.000000 SL
2 setlinecap
72 72 648 72 
L9
0 setlinecap
72 72 72 504 
L9
( NFS Operations/Second) 0 648 47 TXR
( Response Time (Msec)) 90 41.5 504 TXR
(CONFIGURATION) 0 81.6 496.8 TXL
( ) 0 81.6 486.3 TXL
(Nhfsstone:) 0 81.6 475.8 TXL
(    V1.20, default mix, 6 procs ) 0 81.6 465.3 TXL
(Client:) 0 81.6 454.8 TXL
(    DECsystem 5500, ULTRIX V4.1, 16 MB,) 0 81.6 444.3 TXL
(      10% bufcache, 4 biods) 0 81.6 433.8 TXL
(Servers:) 0 81.6 423.3 TXL
(    DECsystem 5500, ULTRIX V4.1, 32 MB,) 0 81.6 412.8 TXL
(      25% bufcache, RZ57 disks, 16 nfsds) 0 81.6 402.3 TXL
() 0 81.6 391.8 TXL
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
6 SetSym
<04> 111.533 153.72 SY
<04> 150.778 170.352 SY
<04> 189.062 185.904 SY
<04> 227.654 207.144 SY
<04> 266.035 227.448 SY
<04> 301.44 282.096 SY
<04> 325.056 346.68 SY
<04> 322.118 388.584 SY
<04> 321.485 394.056 SY
<05> 111.322 112.392 SY
<05> 151.027 115.632 SY
<05> 189.542 116.064 SY
<05> 227.558 126.216 SY
<05> 267.629 129.816 SY
<05> 305.146 135.36 SY
<05> 350.688 142.704 SY
<05> 387.725 152.136 SY
<05> 420.845 168.696 SY
<05> 456.864 178.272 SY
<05> 500.755 189.72 SY
<05> 534.067 203.472 SY
<05> 560.794 233.784 SY
<05> 573.581 230.04 SY
<05> 566.899 235.152 SY
<06> 111.302 156.672 SY
<06> 150.816 158.112 SY
<06> 189.216 164.448 SY
<06> 227.386 176.184 SY
<06> 266.227 183.6 SY
<06> 303.283 191.304 SY
<06> 348.192 207.216 SY
<06> 380.256 233.856 SY
<06> 418.368 250.776 SY
<06> 447.168 262.296 SY
<06> 464.448 271.584 SY
<06> 471.302 273.384 SY
<07> 111.725 109.152 SY
<07> 150.912 110.736 SY
<07> 190.061 117.648 SY
<07> 227.578 122.688 SY
<07> 266.669 129.816 SY
<07> 305.03 133.56 SY
<07> 350.784 143.496 SY
<07> 385.267 148.896 SY
<07> 424.397 156.24 SY
<07> 457.152 164.736 SY
<07> 499.181 178.344 SY
<07> 533.587 193.392 SY
<07> 571.949 221.976 SY
<07> 576.979 230.76 SY
<07> 589.555 228.024 SY
initclip 
showpage
%!

560 0 translate 90 rotate
%!

/symbolFont 10 dict def
symbolFont begin
/FontType 3 def
/FontMatrix [.001 0 0 .001 0 0] def
/FontBBox [-500 -500 500 500] def
/Encoding 256 array def
0 1 255 {Encoding exch /.notdef put} for
Encoding 1 /Cross put
Encoding 2 /Triangle put
Encoding 3 /Trianglefilled put
Encoding 4 /Diamond put
Encoding 5 /Diamondfilled put
Encoding 6 /Square put
Encoding 7 /Squarefilled put
Encoding 8 /Rectan put
Encoding 9 /Rectanfilled put
Encoding 10 /Circle put
Encoding 11 /Circlefilled put
Encoding 12 /Bullet put
Encoding 13 /Star put
Encoding 14 /Plus put

/graphclip {newpath moveto lineto lineto lineto closepath clip } def

/Procs 15 dict def
Procs begin
/.notdef {} def

/Cross {
 newpath -500 -500 moveto 500 500 lineto stroke
 newpath -500 500 moveto 500 -500 lineto stroke } def

/Triangle {
 newpath -500 -500 moveto 0 500 lineto 500 -500 lineto closepath stroke } def

/Trianglefilled {
 newpath -500 -500 moveto 0 500 lineto 500 -500 lineto closepath fill } def

/Diamond {
  newpath -500 0 moveto 0 500 lineto 500 0 lineto 0 -500 lineto closepath
 stroke } def

/Diamondfilled {
  newpath -500 0 moveto 0 500 lineto 500 0 lineto 0 -500 lineto closepath
  fill } def

/Square {
 newpath -500 -500 moveto -500 500 lineto 500 500 lineto 500 -500 lineto
 closepath stroke } def

/Squarefilled {
 newpath -500 -500 moveto -500 500 lineto 500 500 lineto 500 -500 lineto
 closepath fill } def

/Rectan {
 newpath -200 -500 moveto -200 500 lineto 200 500 lineto 200 -500 lineto  
closepath stroke } def

/Rectanfilled {
 newpath -200 -500 moveto -200 500 lineto 200 500 lineto 200 -500 lineto  
closepath fill } def


/Circle { newpath 0 0 500 0 360 arc stroke } def

/Circlefilled { newpath 0 0 500 0 360 arc closepath fill } def


/Bullet { newpath 0 0 500 0 360 arc closepath fill } def

/Plus {
 newpath 0 -500 moveto 0 500 lineto stroke
 newpath -500 0 moveto 500 0 lineto stroke } def

/Star {
 newpath 0 -500 moveto 0 500 lineto stroke
 newpath -500 0 moveto 500 0 lineto stroke
 newpath -500 -500 moveto 500 500 lineto stroke
 newpath -500 500 moveto 500 -500 lineto stroke } def

end

/BuildChar {
 1000 0 -500 -500 500 500 setcachedevice
 exch begin Encoding exch get Procs exch get end exec } def
end

/Symbols symbolFont definefont pop

% size SetSym		-> set font to be symbols scaled by 'size'
/SetSym { /Symbols findfont exch scalefont setfont } def

% size fontname SetTxt		-> set font 'fontname' scaled by 'size'
/SetTxt { findfont exch scalefont setfont } def

% dashtype thicknes SL
/SL { setlinewidth 0 setdash } def

/cross {2 copy le {exch pop} {pop} ifelse} def

%9 added to distinguish from other clashing scribe definitions
% from to L9	-> print line between points 'from' and 'to'
/L9 { newpath moveto lineto stroke } def
/S9 { newpath moveto } def
/M9 { lineto } def
/D9 { stroke } def
/SS9 { setscreen } def
/G9 { setgray } def
/F9 {newpath moveto lineto lineto lineto closepath fill} def
/E9 {closepath fill} def
% E9 is fills for incremental curves, while F9 for curve segments

/Landscape {612 0 translate 90 rotate} def

% save current point in global variable psx psy
/SAVPOS { /psx currentpoint pop def /psy currentpoint exch pop def } def

% string angle xpos ypos TXL	-> print 'string' at pos xpos, ypos
/TXL { gsave translate rotate 0 0 moveto show SAVPOS grestore } def

% string angle xpos ypos TXR	-> print 'string' at pos xpos, ypos
/TXR { gsave translate rotate dup stringwidth pop neg 0 moveto show SAVPOS 
       grestore } def

% string angle xpos ypos TXC	-> print 'string' at pos xpos, ypos
/TXC { gsave translate rotate dup stringwidth pop 2 div neg 0 moveto show
       SAVPOS grestore } def

% string angle TXREL	-> print 'string' at xpos ypos translate psx psy rel
/TXREL { gsave translate rotate psx psy moveto show SAVPOS grestore } def

% char xpos ypos SY	-> print symbol 'char' at position xpos, ypos
/SY { moveto show } def

/len {dup mul exch dup mul add sqrt}def


%%%%%%%%%%%%%%%%%%%%%%%  CURVE SMOOTHING  %%%%%%%%%%%%%%%%%%%%%%

% Curve Smoothing Routines
%  Ernest Wood  -  Wed Apr 16 09:05:05 1986
%
%  These routines will ALWAYS create a smooth curve which
%  intercepts EVERY point used to generate them.
%
%  The definition qA determines the amount of overshoot smoothing
%  produces around each point.  The distance is the distance to the
%  next point times aA.  The factor qB scales the amount of overshoot
%  by the acuteness of the angle around the point.
%
%  These values make a square of points into a circle.
/qA .3 def		% used in qx
/qB 1 def		% used in afactor

/8a 8 array def
%
%  Angle of vector from p0 to p1	p0 p1 polar ang
/polar{qs neg exch neg atan}def 

%subtract and add points	p0 p1 qs p0-p1
%				p0 p1 qa p0+p1
/qs{exch 3 1 roll sub 3 1 roll sub exch}def
/qa{exch 3 1 roll add 3 1 roll add exch}def

%  Extract point from 8 point array
%
/Pt{2 mul dup 8a exch get exch 1 add 8a exch get}def

%  a0 a1 mirrorang ma
%	If a0 is the angle from p1 to p0 and a1 is the angle from
%	p1 to p2 then ma is the mirror angle between p0-p1 and p1-p2.
%  a0 a1 afactor f
%	If a0 is the angle from p1 to p0 and a1 is the angle from
%	p1 to p2 then f is the ratio of the inside angle between a0 and a1
%	and 180 times qB.  This ratio is saturated at 1 and if qB is 0 then
%	the value returned is always 1.  Thus the more acute the angle 
%	the smaller the value of f.
%
/mirrorang{2 copy add 2 div 3 1 roll sub 0 lt {90} {-90}ifelse add}def
/afactor{
    qB 0 eq
	{ 1 }
	{sub abs dup 180 gt {360 exch sub} if 180 div qB mul
	 dup 1 gt {pop 1} if}
    ifelse
}def

%  a d xya x y
%	Given angle a and distance d
%	produce x and y offsets.
%
/xya{exch 2 copy cos mul 3 1 roll sin mul}def

%  p0 p1 p2 p3  qx  pp1 pp2 pp3
%	Given 4 points on a curve produce the pp# values needed by
%	curveto to draw a smooth curve between p1 and p2.  The slope
%	of the curve at p1 and p2 will be perpendicular to the bisector
%	of a angle between p0/p1/p2 or p1/p2/p3.
%
/qx{
    8a astore pop
    1 Pt 2 Pt qs len qA mul /dist exch def
    1 Pt 0 Pt polar
    1 Pt 2 Pt polar
    2 copy mirrorang
    3 1 roll afactor dist mul
    xya 1 Pt qa
    2 Pt 3 Pt polar
    2 Pt 1 Pt polar
    2 copy mirrorang
    3 1 roll afactor dist mul
    xya 2 Pt qa
    2 Pt
}def

/qp{8 copy 16 -2 roll pop pop}def
/ns1{4 copy 4 -2 roll 2 copy qa 4 2 roll qs 6 2 roll /ns{ns2}def }def
/ns2{qp qx curveto}def

%  User definitions for curve smoothing routines.
%	First (ms), intermediate (ns), and last points with (fs) and
%	without (nsfs) automatic stroke execution.
%
/ms{2 copy newpath moveto /ns{ns1}def}def
/ns{ns1}def
/fs{stroke}def
/nsfs{ns 4 copy 2 copy qa 4 2 roll qs qx curveto}def
/nsend{4 copy 2 copy qa 4 2 roll qs qx curveto}def

6 SetSym
<02> 494.4 496.8 SY
10 /Helvetica SetTxt
( DECsystem 5100, 1 RZ57) 0 507.904 493.8 TXL
6 SetSym
<03> 494.4 483.8 SY
10 /Helvetica SetTxt
( DECsystem 5100 Prestoserve, 1 RZ57) 0 507.904 480.8 TXL
6 SetSym
<0a> 494.4 470.8 SY
10 /Helvetica SetTxt
( DECsystem 5100, 2 RZ57) 0 507.904 467.8 TXL
6 SetSym
<0b> 494.4 457.8 SY
10 /Helvetica SetTxt
( DECsystem 5100 Prestoserve, 2 RZ57) 0 507.904 454.8 TXL
6 SetSym
<04> 494.4 444.8 SY
10 /Helvetica SetTxt
( DECsystem 5500, 1 RZ57) 0 507.904 441.8 TXL
6 SetSym
<05> 494.4 431.8 SY
10 /Helvetica SetTxt
( DECsystem 5500 Prestoserve, 1 RZ57) 0 507.904 428.8 TXL
6 SetSym
<06> 494.4 418.8 SY
10 /Helvetica SetTxt
( DECsystem 5500, 2 RZ57) 0 507.904 415.8 TXL
6 SetSym
<07> 494.4 405.8 SY
10 /Helvetica SetTxt
( DECsystem 5500 Prestoserve, 2 RZ57) 0 507.904 402.8 TXL
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
112.09 202.104 ms
[] 0.600000 SL
151.661 202.104 ns
190.618 231.768 ns
227.981 282.744 ns
266.592 346.032 ns
296.429 435.024 ns
303.744 471.168 ns
313.44 458.136 ns
307.219 475.704 ns
nsend
D9
112.454 122.544 ms
150.355 142.056 ns
190.003 142.272 ns
228.691 159.12 ns
266.227 171.144 ns
306.95 190.008 ns
341.126 207.936 ns
385.498 242.424 ns
428.448 268.128 ns
436.646 323.64 ns
446.726 321.336 ns
nsend
D9
111.898 158.472 ms
151.027 182.304 ns
189.216 192.672 ns
227.424 205.848 ns
265.094 233.856 ns
302.4 258.84 ns
347.808 294.48 ns
365.856 341.064 ns
368.544 343.584 ns
370.848 342.792 ns
nsend
D9
111.974 125.424 ms
150.509 132.624 ns
190.003 142.128 ns
227.098 146.808 ns
266.765 162.432 ns
305.318 175.68 ns
348.134 199.44 ns
384.826 210.528 ns
418.368 238.176 ns
441.293 282.024 ns
446.016 287.136 ns
449.069 285.12 ns
nsend
D9
111.533 153.72 ms
150.778 170.352 ns
189.062 185.904 ns
227.654 207.144 ns
266.035 227.448 ns
301.44 282.096 ns
325.056 346.68 ns
322.118 388.584 ns
321.485 394.056 ns
nsend
D9
111.322 112.392 ms
151.027 115.632 ns
189.542 116.064 ns
227.558 126.216 ns
267.629 129.816 ns
305.146 135.36 ns
350.688 142.704 ns
387.725 152.136 ns
420.845 168.696 ns
456.864 178.272 ns
500.755 189.72 ns
534.067 203.472 ns
560.794 233.784 ns
573.581 230.04 ns
566.899 235.152 ns
nsend
D9
111.302 156.672 ms
150.816 158.112 ns
189.216 164.448 ns
227.386 176.184 ns
266.227 183.6 ns
303.283 191.304 ns
348.192 207.216 ns
380.256 233.856 ns
418.368 250.776 ns
447.168 262.296 ns
464.448 271.584 ns
471.302 273.384 ns
nsend
D9
111.725 109.152 ms
150.912 110.736 ns
190.061 117.648 ns
227.578 122.688 ns
266.669 129.816 ns
305.03 133.56 ns
350.784 143.496 ns
385.267 148.896 ns
424.397 156.24 ns
457.152 164.736 ns
499.181 178.344 ns
533.587 193.392 ns
571.949 221.976 ns
576.979 230.76 ns
589.555 228.024 ns
nsend
D9
initclip 
(|) 0 72 72 TXC
10 /Helvetica-Bold SetTxt
(0) 0 72 60 TXC
10 /Helvetica SetTxt
(|) 0 110.4 72 TXC
10 /Helvetica-Bold SetTxt
(20) 0 110.4 60 TXC
10 /Helvetica SetTxt
(|) 0 148.8 72 TXC
10 /Helvetica-Bold SetTxt
(40) 0 148.8 60 TXC
10 /Helvetica SetTxt
(|) 0 187.2 72 TXC
10 /Helvetica-Bold SetTxt
(60) 0 187.2 60 TXC
10 /Helvetica SetTxt
(|) 0 225.6 72 TXC
10 /Helvetica-Bold SetTxt
(80) 0 225.6 60 TXC
10 /Helvetica SetTxt
(|) 0 264 72 TXC
10 /Helvetica-Bold SetTxt
(100) 0 264 60 TXC
10 /Helvetica SetTxt
(|) 0 302.4 72 TXC
10 /Helvetica-Bold SetTxt
(120) 0 302.4 60 TXC
10 /Helvetica SetTxt
(|) 0 340.8 72 TXC
10 /Helvetica-Bold SetTxt
(140) 0 340.8 60 TXC
10 /Helvetica SetTxt
(|) 0 379.2 72 TXC
10 /Helvetica-Bold SetTxt
(160) 0 379.2 60 TXC
10 /Helvetica SetTxt
(|) 0 417.6 72 TXC
10 /Helvetica-Bold SetTxt
(180) 0 417.6 60 TXC
10 /Helvetica SetTxt
(|) 0 456 72 TXC
10 /Helvetica-Bold SetTxt
(200) 0 456 60 TXC
10 /Helvetica SetTxt
(|) 0 494.4 72 TXC
10 /Helvetica-Bold SetTxt
(220) 0 494.4 60 TXC
10 /Helvetica SetTxt
(|) 0 532.8 72 TXC
10 /Helvetica-Bold SetTxt
(240) 0 532.8 60 TXC
10 /Helvetica SetTxt
(|) 0 571.2 72 TXC
10 /Helvetica-Bold SetTxt
(260) 0 571.2 60 TXC
10 /Helvetica SetTxt
(|) 0 609.6 72 TXC
10 /Helvetica-Bold SetTxt
(280) 0 609.6 60 TXC
10 /Helvetica SetTxt
(|) 0 648 72 TXC
10 /Helvetica-Bold SetTxt
(300) 0 648 60 TXC
10 /Helvetica SetTxt
(|) -90 72 72 TXC
10 /Helvetica-Bold SetTxt
(0) 0 67 69 TXR
10 /Helvetica SetTxt
(|) -90 72 108 TXC
10 /Helvetica-Bold SetTxt
(5) 0 67 105 TXR
10 /Helvetica SetTxt
(|) -90 72 144 TXC
10 /Helvetica-Bold SetTxt
(10) 0 67 141 TXR
10 /Helvetica SetTxt
(|) -90 72 180 TXC
10 /Helvetica-Bold SetTxt
(15) 0 67 177 TXR
10 /Helvetica SetTxt
(|) -90 72 216 TXC
10 /Helvetica-Bold SetTxt
(20) 0 67 213 TXR
10 /Helvetica SetTxt
(|) -90 72 252 TXC
10 /Helvetica-Bold SetTxt
(25) 0 67 249 TXR
10 /Helvetica SetTxt
(|) -90 72 288 TXC
10 /Helvetica-Bold SetTxt
(30) 0 67 285 TXR
10 /Helvetica SetTxt
(|) -90 72 324 TXC
10 /Helvetica-Bold SetTxt
(35) 0 67 321 TXR
10 /Helvetica SetTxt
(|) -90 72 360 TXC
10 /Helvetica-Bold SetTxt
(40) 0 67 357 TXR
10 /Helvetica SetTxt
(|) -90 72 396 TXC
10 /Helvetica-Bold SetTxt
(45) 0 67 393 TXR
10 /Helvetica SetTxt
(|) -90 72 432 TXC
10 /Helvetica-Bold SetTxt
(50) 0 67 429 TXR
10 /Helvetica SetTxt
(|) -90 72 468 TXC
10 /Helvetica-Bold SetTxt
(55) 0 67 465 TXR
10 /Helvetica SetTxt
(|) -90 72 504 TXC
10 /Helvetica-Bold SetTxt
(60) 0 67 501 TXR
10 /Helvetica SetTxt
( DECsystem 5100 and DECsystem 5500 One and Two Disk Nhfsstone Profile)
0 360 28 TXC
[] 1.000000 SL
2 setlinecap
72 72 648 72 
L9
0 setlinecap
72 72 72 504 
L9
( NFS Operations/Second) 0 648 47 TXR
( Response Time (Msec)) 90 41.5 504 TXR
(CONFIGURATION) 0 81.6 496.8 TXL
( ) 0 81.6 486.3 TXL
(Nhfsstone:) 0 81.6 475.8 TXL
(    V1.20, default mix, 6 procs ) 0 81.6 465.3 TXL
(Client:) 0 81.6 454.8 TXL
(    DECsystem 5500, ULTRIX V4.1, 16 MB,) 0 81.6 444.3 TXL
(      10% bufcache, 4 biods) 0 81.6 433.8 TXL
(Servers:) 0 81.6 423.3 TXL
(    DECsystem 5100, ULTRIX V4.1, 32 MB,) 0 81.6 412.8 TXL
(      25% bufcache, RZ57 disks, 16 nfsds) 0 81.6 402.3 TXL
(    DECsystem 5500, ULTRIX V4.1, 32MB,) 0 81.6 391.8 TXL
(      25% bufcache, RZ57 disks, 16 nfsds) 0 81.6 381.3 TXL
() 0 81.6 370.8 TXL
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
72.000000 72.000000 648.000000 72.000000 648.000000 504.000000 72.000000
504.000000 newpath moveto lineto lineto lineto closepath clip
6 SetSym
<02> 112.09 202.104 SY
<02> 151.661 202.104 SY
<02> 190.618 231.768 SY
<02> 227.981 282.744 SY
<02> 266.592 346.032 SY
<02> 296.429 435.024 SY
<02> 303.744 471.168 SY
<02> 313.44 458.136 SY
<02> 307.219 475.704 SY
<03> 112.454 122.544 SY
<03> 150.355 142.056 SY
<03> 190.003 142.272 SY
<03> 228.691 159.12 SY
<03> 266.227 171.144 SY
<03> 306.95 190.008 SY
<03> 341.126 207.936 SY
<03> 385.498 242.424 SY
<03> 428.448 268.128 SY
<03> 436.646 323.64 SY
<03> 446.726 321.336 SY
<0a> 111.898 158.472 SY
<0a> 151.027 182.304 SY
<0a> 189.216 192.672 SY
<0a> 227.424 205.848 SY
<0a> 265.094 233.856 SY
<0a> 302.4 258.84 SY
<0a> 347.808 294.48 SY
<0a> 365.856 341.064 SY
<0a> 368.544 343.584 SY
<0a> 370.848 342.792 SY
<0b> 111.974 125.424 SY
<0b> 150.509 132.624 SY
<0b> 190.003 142.128 SY
<0b> 227.098 146.808 SY
<0b> 266.765 162.432 SY
<0b> 305.318 175.68 SY
<0b> 348.134 199.44 SY
<0b> 384.826 210.528 SY
<0b> 418.368 238.176 SY
<0b> 441.293 282.024 SY
<0b> 446.016 287.136 SY
<0b> 449.069 285.12 SY
<04> 111.533 153.72 SY
<04> 150.778 170.352 SY
<04> 189.062 185.904 SY
<04> 227.654 207.144 SY
<04> 266.035 227.448 SY
<04> 301.44 282.096 SY
<04> 325.056 346.68 SY
<04> 322.118 388.584 SY
<04> 321.485 394.056 SY
<05> 111.322 112.392 SY
<05> 151.027 115.632 SY
<05> 189.542 116.064 SY
<05> 227.558 126.216 SY
<05> 267.629 129.816 SY
<05> 305.146 135.36 SY
<05> 350.688 142.704 SY
<05> 387.725 152.136 SY
<05> 420.845 168.696 SY
<05> 456.864 178.272 SY
<05> 500.755 189.72 SY
<05> 534.067 203.472 SY
<05> 560.794 233.784 SY
<05> 573.581 230.04 SY
<05> 566.899 235.152 SY
<06> 111.302 156.672 SY
<06> 150.816 158.112 SY
<06> 189.216 164.448 SY
<06> 227.386 176.184 SY
<06> 266.227 183.6 SY
<06> 303.283 191.304 SY
<06> 348.192 207.216 SY
<06> 380.256 233.856 SY
<06> 418.368 250.776 SY
<06> 447.168 262.296 SY
<06> 464.448 271.584 SY
<06> 471.302 273.384 SY
<07> 111.725 109.152 SY
<07> 150.912 110.736 SY
<07> 190.061 117.648 SY
<07> 227.578 122.688 SY
<07> 266.669 129.816 SY
<07> 305.03 133.56 SY
<07> 350.784 143.496 SY
<07> 385.267 148.896 SY
<07> 424.397 156.24 SY
<07> 457.152 164.736 SY
<07> 499.181 178.344 SY
<07> 533.587 193.392 SY
<07> 571.949 221.976 SY
<07> 576.979 230.76 SY
<07> 589.555 228.024 SY
initclip 
showpage



More information about the Comp.unix.ultrix mailing list