How to optimize BSD (SunOS 4) file system (esp. for Big partition)?

Gerald Justice justice at dao.nrc.ca
Sat Feb 10 00:45:57 AEST 1990


I am looking for some advice on optimizing the file systems on a Sun 4/280
NFS and boot server running SunOS 4.0.1 (soon 4.0.3) used in a scientific
data analysis environment.  The clients are 3/60's and 4/60's, all diskless.

I have:
I)   Read and re-read the mkfs(8), newfs(8), tunefs(8), and fs(5) man pages.
II)  Read chapter 7 (the file system chapter) of _The_Design_and_Implemen-
     tation_of_the_4.3_BSD_Operating_System_ by Leffler, McKusick, Karels,
     and Quarterman.  (Very enlightening but didn't answer my questions.)
III) Looked for but failed to find anything useful in the Sun "Network and
     Administration Manual" even though all the above man pages refer there.

Specifically, I would very much appreciate:
I)  A copy of _A_Fast_File_System_for_UNIX_, McKusick, Joy, Leffler.  Can I
    ftp it from somewhere? (This is also referenced in the Sun man pages.)
II) Advice on the effects of changing the following parameters:
   A) number of cylinders per group
     1) If one has a very large file system (order 700Mb) intended for
        storing primarily large files (.25 to 2 Mb) although small files
        will also occur in this fs, is there any point to increasing this
        parameter?
     2) If one has a partition for diskless client swap space (say 8 * 32 Mb)
	is there any advantage to increasing this parameter?
     3) If one has a very small partition, say 24 cylinders is there any
	benefit in setting this parameter to 12 to have two equal
	sized groups rather than two different sized (16 and 8) groups?
   B) maximum blocks per group
     1) as in A1) above, should this parameter be increased?  How much
	is safe? Note that efficiency of access for large files is more
	important than for small files.
     2) as in A2) above, is there any benefit to increasing this parameter?
   C) minimum free space
     1) as in A1) above, can less than 10% be "gotten" away with?  10% of
	700Mb is a lot of "elbow" room, and seems inappropriate.  But
	read/write efficiency is the primary objective for this fs so I
	don't want to sacrifice that to gain some more space.
	(But I do so want more space!)
     2) as in A2) above, is this really a "static" partition (like /usr)
	and can I safely set free space to 0?
   D) bytes per inode
     1) I plan to double this parameter for those fs's where average
	file size is fairly large and where similar partitions currently
	show inode utilization below 30% but space utilization near 90%.
     2) as in A2) above, is there any reason not to set the bytes per inode
	to the actual swap file size? Should I really create just 8 inodes?
	(Actually I would create 16 just in case, I suspect it is impossible
	to get less than some minimum like blksize/inodes-per-blks?)
   E) anything else that I can usefully adjust?

Thank you in advance.
Email responses will be summarized if there is sufficient interest.

justice at dao.nrc.ca BITNET:justice at nrcdao DAO Victoria, BC CANADA (604) 388-0055



More information about the Comp.unix.wizards mailing list