Disk Reader
Purpose:
Informix must rely on the OS to read a chunk from disk in order to send it to the storage manager. The purpose of this utility is to measure how fast the OS can read data from a given chunk.

How To Use:
To use this uility you must first compile the C code to an executable.
./diskreader : FILE_NAME BLOCK_SIZE OFFSET #_OF_BLOCKS(optional)
Parameters:
FILE_NAME: The complete pathname to the chunk/disk we want to read
BLOCK_SIZE: The blocksize (in Kbytes) used to read. I would suggest using 4*PAGESIZE.
OFFSET: The offset to start reading from (in Kbytes) #_OF_BLOCKS: The number of blocks to read. If no values is specified, then it will read until it encounters an End-Of-File marker.
Sample Session
$ ./diskreader  /data6/tiller_test/data3 8 0 12500
Attempting to reading  12500 blocks of size 8 K from /data6/tiller_test/data3
Read 12500 blocks of 8K from /data6/tiller_test/data3.  Total size read is:  100
000K
It took 34 seconds. Rate : 2941.000000K per sec
$
$


Please Note:
If you are using cooked files then it can be very difficult to accurately measure the throughput. The cooked file its self can be cached in memory at some points and not cashed in others.


Download:
diskreader.tar
Not available yet. Please Email tiller@informix.com for anadvanced copy.




Compiling the Source:
You must compile the source code to an executable. On Solaris platforms the complie line will look like the following:
cc diskreader.c -o diskreader
1