*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> dmedia/diskperf (1)              


diskperf(1)							   diskperf(1)

NAME    [Toc]    [Back]

     diskperf -	Disk Performance Testing Utility

SYNOPSIS    [Toc]    [Back]

     diskperf [-W] [-D]	[-R] [-L] [-n<name>] [-t<n>] [-s<f>]
	      [-d<f>] [-c<n>[k|m|g]] [-r<n>[k|m|g]]
	      [-m<n>[k|m|g]] <testpath>

DESCRIPTION    [Toc]    [Back]

     The purpose of this utility is to measure the performance of a disk
     configuration as either a raw volume or with a filesystem such as XFS. A
     number of different test patterns are run including forward and backward
     sequential	as well	as random seek read/write patterns. The	output is
     tabulated in a form usable	for processing by other	utilities such as
     gnuplot for further analysis.

OPTIONS    [Toc]    [Back]

     -W	  By default diskperf only performs read tests.	If this	switch is
	  supplied, write tests	will also be done.

	  Raw write testing will destroy partition contents !!

	  For filesystem tests,	any contents of	the test file will be
	  destroyed. Note that is the test file	exists it may grow if the end
	  of file is reached before the	test time expires.  If the test	file
	  does not exist it will be created.

     -D	  In the case of a filesystem test, this switch	forces diskperf	to use
	  direct I/O when accessing the	test file.  Direct I/O is only
	  supported on EFS, XFS	and NFS	( via BDS ) filesytems.

	  This switch has no effect for	raw tests.

     -R	  Forces testing to take place on the real time	subvolume of an	XLV
	  volume built with xlv_make.

     -L	  In the case of a raw test, forces testing to take place on the log
	  subvolume of an XLV volume built with	xlv_make.

	  This switch has no effect for	filesystem tests.

     -n	name
	  Specifies an arbitrary identifying name for the test which will
	  appear in the	test output. This option is useful to uniquely label
	  results when running from shell scripts.

     -t	time
	  Specifies the	duration in seconds for	each test component. This
	  allows limiting of the run time for individual tests.	Care should be
	  taken	to use a test time long	enough to give a representative	result
	  from the disk	configuration.

									Page 1

diskperf(1)							   diskperf(1)

	  The default is 10 seconds.

     -s	factor
	  Specifies a floating point scaling factor for	all the	results.  This
	  is useful for	obtaining per-disk performance characteristics.

	  The default scaling factor is	1.0

     -d	seconds
	  Specifies a floating point delay in seconds between each I/O
	  request.  This is useful for multi-thread tests ( ie.	multiple
	  diskperfs running on the same	volume ) to alleviate the problem of
	  single threads monopolizing access to	the disk hardware, which can
	  be related to	the fairness policies of both the disk hardware	and
	  the scheduler.

	  The default delay is 0.0 ( no	delay )

     -c	size[k|m|g]
	  In the case of a filesystem test, this switch	forces diskperf	to
	  create the test file specified in <testpath> to the specified	size
	  in bytes, kilobytes, megabytes or gigabytes (	using suffixes ).  By
	  default, diskperf assumes the	test file is an	existing file. This is
	  useful if tests need to be done on existing representative data
	  files, or particular files which may be causing problems for an
	  application because of disk errors, fragmentation etc.

	  This switch has no effect for	raw tests.

     -r	size[k|m|g]
	  Specifies the	minimum	request	size in	bytes, kilobytes, megabytes or
	  gigabytes ( using suffixes ).	Testing	will start at this request
	  size and progressively double	until the maximum request size is

	  For striped subvolumes the default is	the stripe size.  Otherwise,
	  the default value is 16k.

     -m	size[k|m|g]
	  Specifies the	maximum	request	size in	bytes, kilobytes, megabytes or
	  gigabytes ( using suffixes ).	This value defaults to the greater of
	  the kernel maximum allowed DMA size (	controlled by the maxdmasz
	  systune parameter ) and the maximum DMA size for the device.

	  Specifies the	path to	the file or raw	device to test.

	  For filesystem tests this is simply a	pathname for a test file to be
	  created ( or used if -N ) for	performance testing. For example :

									Page 2

diskperf(1)							   diskperf(1)

	       diskperf	-D -r4k	-m1m /d2/testfile
	       diskperf	-W -N -D -R /disk6/problemfile

	  For raw tests, the is	the pathname to	a character device. For
	  example :

	       diskperf	-r512k -m8m /dev/rdsk/dks10d1s7
	       diskperf	/dev/rxlv/striped_volume

RAW DEVICE TESTING    [Toc]    [Back]

     This is the lowest	level of disk testing and bypasses the filesystem
     layer and hence eliminates	all overhead normally incurred when accessing
     the disk via a filesystem.	 Note that raw tests will require root
     priveleges	to access to raw disk character

     The main reason for using a raw test is to	obtain measurements close to
     the physical capabilities of the disk hardware. This gives	a set of
     performance ceilings to which filesystem or application level
     measurements can be compared.

     Also, because a raw test has the freedom to access	the entire addressable
     space of the disk partition, accurate and representative worst case
     random seek read/write measurements can be	obtained because the seek
     distance is not bounded by	the size of a test file, as is the case	with
     filesystem	level tests.

     # diskperf	-W -n "FC Test #1" -t5 -m16m /dev/rdsk/dks15d1s7
     # Test name     : FC Test #1
     # Test date     : Sun Jul 20 19:05:34 1997
     # Test machine  : IRIX64 blob 6.4 02121744	IP27
     # Test type     : Raw data	subvolume
     # Request sizes : min=16384 max=16777216
     # Parameters    : direct=0	time=5
     #		       path=/dev/rdsk/dks15d1s7
     # Device size   : 142258752 blocks
     # req_size	 fwd_wt	 fwd_rd	 bwd_wt	 bwd_rd	 rnd_wt	 rnd_rd
     #	(bytes)	 (MB/s)	 (MB/s)	 (MB/s)	 (MB/s)	 (MB/s)	 (MB/s)
	  16384	   9.28	  10.71	   1.97	   1.54	   1.01	   0.85
	  32768	  16.53	  19.30	   3.50	   3.07	   1.99	   1.66
	  65536	  27.28	  32.32	   6.57	   5.75	   3.92	   3.22
	 131072	  36.81	  48.97	  11.98	  10.52	   7.46	   6.13
	 262144	  50.53	  65.90	  20.16	  17.93	  13.54	  11.24
	 524288	  61.98	  79.62	  29.37	  26.72	  23.09	  19.61
	1048576	  68.34	  88.94	  38.32	  36.26	  35.52	  31.46
	2097152	  71.65	  88.86	  45.16	  44.73	  47.45	  44.39
	4194304	  72.31	  88.90	  50.05	  49.40	  55.91	  56.37

									Page 3

diskperf(1)							   diskperf(1)

	8388608	  71.93	  88.81	  50.73	  52.16	  60.39	  63.18
       16777216	  73.40	  88.84	  50.41	  53.83	  60.13	  69.33


     Filesystem	tests perform all I/O activity through whatever	filesystem is
     layered on	the disk device. These tests are more representative of
     expected real world application performance because they address the disk
     through the same mechanisms used by applications working with
     filesystems. Filesystem tests perform all their testing within a supplied
     ( or created ) test file.	Care must be taken as filesystem tests can
     only work within the bounds of the	test file so try to work with as big a
     test file as possible to get more representative results.

     # diskalign -n "video" -r6m '/dev/dsk/dks[15-17]d1s7' | xlv_make
     Object specification completed
     # mkfs /dev/xlv/video
     meta-data=/dev/xlv/video isize=256	agcount=204 agsize=261504
     data     =		    bsize=4096 blocks=53346816 imaxpct=25
     log      =internal	log   bsize=4096 blocks=1000
     realtime =none	      extsz=65536 blocks=0, rtextents=0
     # mount /dev/xlv/video /video
     # diskperf	-W -D -n "Striped" -c2g	/video/testfile
     # Test name     : Striped
     # Test date     : Sun Jul 20 20:42:57 1997
     # Test machine  : IRIX64 blob 6.4 02121744	IP27
     # Test type     : XFS striped data	subvolume
     # Disk striping : group=3	unit=4096
     # Request sizes : min=6291456 max=67125248
     # Parameters    : direct=1	time=10
     #		       path=/video/testfile
     # XFS file	size : 2202009600 bytes
     # req_size	 fwd_wt	 fwd_rd	 bwd_wt	 bwd_rd	 rnd_wt	 rnd_rd
     #	(bytes)	 (MB/s)	 (MB/s)	 (MB/s)	 (MB/s)	 (MB/s)	 (MB/s)
	6291456	  63.94	 245.11	  67.69	 180.23	  66.02	 171.52
       12582912	  78.15	 249.03	  80.68	 210.87	  79.22	 204.64
       25165824	  87.72	 251.56	  89.32	 229.63	  88.77	 228.97
       50331648	  91.73	 239.29	  92.22	 228.00	  92.10	 230.26

BUGS    [Toc]    [Back]

     None known

									Page 4

diskperf(1)							   diskperf(1)

     diskprep(1M), diskalign(1M), xlv_make(1M),	mkfs(1M)

NOTES    [Toc]    [Back]


AUTHOR    [Toc]    [Back]

     Will McGovern ( willmc@sgi.com )
     Advanced Entertainment Systems Division
     Silicon Graphics Inc.

									PPPPaaaaggggeeee 5555
[ Back ]
 Similar pages
Name OS Title
fx IRIX disk utility
fddisk Tru64 FDI disk maintenance utility
diskalign IRIX XLV Aligned Disk Striping Utility
raidctl OpenBSD configuration utility for the RAIDframe disk driver
ccdconfig OpenBSD configuration utility for the concatenated disk driver
raidctl FreeBSD configuration utility for the RAIDframe disk driver
ccdconfig FreeBSD configuration utility for the concatenated disk driver
dmrecord IRIX digital media hard-disk recording utility
gbde FreeBSD operation and management utility for Geom Based Disk Encryption
mac_test FreeBSD MAC framework testing policy
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service